常見正規表示式彙總 一

2021-09-22 23:54:44 字數 2580 閱讀 3250

1.  匹配行的起始和結束:

ip as-path access-list 20 permit 850

該過濾器匹配任何包含字串 850 的 as-path 。匹配的 as-path 例如:( 850 ),( 23 , 5 , 850 , 155 )和( 1123 , 850 , 367 )等等。無論所匹配的串是屬性中唯一的串或者屬性中多個 as 號中的乙個甚至是屬性中乙個很大的 as 號中的一部分,該匹配都成功。

ip as-path access-list 20 permit ^850$

該過濾器表示:開始緊接著乙個字串 850 ,然後緊接行的結束,只匹配 as850.

ip as-path access-list 20 permit ^$

正規表示式匹配行的開始緊接行的結束;如果行的開始與行的結束間存在任何字元則匹配不成功。

2 .匹配字元集合:

ip as-path access-list 20 permit ^85[0123459]$

該過濾器匹配包含單一 as 號, 850 , 851 , 852 , 853 , 854 , 855 , 859 的 as-path.

ip as-path access-list 20 permit ^85[0-5]$

該過濾器匹配包含單一 as 號, 850 , 851 , 852 , 853 , 854 , 855.

3. 否定:匹配除字符集和外的其他任何字元

當在括弧中使用加字元時,將否定方括弧中制定的範圍。結果是正規表示式將匹配範圍外的任何內容。

ip as-path access-lisr 20 permit ^85[^0-5]$

該過濾器除了多乙個加字元以外與上乙個過濾器類似,指定了「不是 0~5 」。該正規表示式將匹配除( 850 , 851 , 852 , 853 , 854 , 855 )範圍以外的 as 號。

4 .萬用字元:匹配任何單一字元。

點(。)匹配任何單一字元。單一字元可能是乙個空的。

ip as-path access-list 20 permit ^85.

該過濾器匹配乙個由 as 號 850-859 開始的 as-path 。由於「。」可以匹配乙個空格, as 號 85 也能匹配成功。

5.   替代:匹配字串集合中的乙個

( | )用作表示乙個「或」操作。即( | )任何一邊的字都可以匹配。

ip as-path access-list 20 permit ^(851|852)$

該過濾器匹配單個的 as 號: 851 或 852 的 as-path. 你可以擴充套件「或」功能來作多於 2 個可能性的選擇。

ip as-path access-list permit ^(851|853|855|858|869)

該過濾器匹配單個的 as 號: 851,853,855,858 或 869 的 as-path.

6 .選擇字元:匹配乙個可能存在也可能不存在的字元。

問號(?)匹配字的 0 個或乙個例項。

ip as-path access-list 20 permit ^(850)?$

該過濾器匹配乙個單一 as 號 850 的 as-path 或者匹配乙個空的列表。注意這裡的園括弧,表示元字元特殊字元「?」應用在整個 as 號上。如果表示式使用 850 ?,元字元特殊字元只應用在最後乙個字元上。該表示式匹配 85 或者 850.

7 .重複:匹配許多字元的重複

星號( * )匹配 0 次或多次重複,加號( + )匹配 1 次或多重複。

ip as-path access-list 20 permit ^(850)*$

該過濾器 as-path 匹配空的 as 列表或包含 1 個或多個的 as 號 850 的列表。即 as 路徑可以是( 850 ),( 850 , 850 ),( 850 , 850 , 850 )等。

ip as-path access-list 20 permit ^(850)+$

該過濾器的功能與上面的類似,只是要求列表中至少包含 1 個 as 號 850.

8 .分界線:描述多個字 .

分界線( _ )用作描述分隔分別指定的一串字。

ip as-path access-list 20 permit ^560_148_284_13$

該過濾器表示匹配指定的 as-path ( 560 , 148 , 284 , 13 )。

ip as-path access-list 20 permit -560_148_284_13_

該過濾器只要求指定的序列包含在 as-path 中,並不要求是唯一的屬性。可以匹配 as-path ( 12 , 560 , 148 , 284 , 13 , 18 )或 as-path ( 560 , 148 , 284 , 13 , 29 )等等。

9 .放到一起:乙個複雜的例子。

將多個元字元特殊字元混合是用來匹配一些複雜的字串才能顯示正規表示式的真正威力,考慮下面的過濾器。

ip as-path access-list 20 permit ^ ( 550 ) +_[880|2304]?_1805_.*  

該過濾器表明:在乙個或多個 550 之後,可能存在 880 或者 2304. 接下來必須有乙個 1805. 最後的部分指定 1805 以後, as-path 可能存在任何 as 號序列,也可能什麼也沒有。

正規表示式學習(二)之常見正規表示式彙總

d 非負整數 正整數 0 0 9 1 9 0 9 正整數 d 0 非正整數 負整數 0 0 9 1 9 0 9 負整數 d 整數 d d 非負浮點數 正浮點數 0 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 正浮點數 d d 0 0 非正浮點數 負浮點數 ...

正規表示式彙總

1 校驗密碼強度 密碼的強度必須是包含大小寫字母和數字的組合,不能使用特殊字元,長度在8 10之間。d a z a z 2.校驗中文 字串僅能是中文。u4e00 u9fa5 3.由數字 26個英文本母或下劃線組成的字串 w 4.校驗e mail 位址 同密碼一樣,下面是e mail位址合規性的正則檢...

正規表示式彙總

一 校驗數字的表示式 數字 0 9 n位的數字 d 至少n位的數字 d m n位的數字 d 零和非零開頭的數字 0 1 9 0 9 非零開頭的最多帶兩位小數的數字 1 9 0 9 0 9 帶1 2位小數的正數或負數 d d 正數 負數 和小數 d d 有兩位小數的正實數 0 9 0 9 有1 3位小...