正則表達式語法簡括

簡例:

引用:using System.Text.RegularExpressions;

 

輸出:

 

正則表達式語法簡述:

MSDN文章

正則表達式包括普通字符(例如,a 到 z 之間的字母)和特殊字符(稱爲“元字符”)。

   

 若要匹配這些特殊字符之一,必須首先轉義字符,即,在字符前面加反斜槓字符 (/)。 例如,若要搜索“+”文本字符,可使用表達式“/+”。 
 標記次數:

*:零次或多次(匹配次數>=0)

+:一次或多次(匹配次數>=1)

?:零次或一次(匹配次數=0 or 1)

:當 ? 緊隨任何其他限定符(*、+、?、{n}、{n,} 或 {n,m})之後時,匹配模式是非貪婪的。

 非貪婪模式匹配搜索到的、儘可能的字符串

 而默認的貪婪模式匹配搜索到的、儘可能的字符串。

{n}:匹配n次

{n,}:至少匹配n次

{n,m}:至少匹配n次,最多匹配m次。

 

 標記位置:

^:開始(/n或/r後的位置)

$:結束(/n或/r前的位置)

 /b:匹配邊界(字與空白)

 /B:匹配非邊界(非字與空白)

其他特殊字符:

|:指示在兩個或多個項之間進行選擇。 

 

字符匹配:

.:除換行符 /n 之外的任何單個字符

/f :換頁符

/n:換行符

/r:回車符

/t:Tab字符

/v:垂直製表符

/s:任何空白字符。 其中包括空格、製表符和換頁符。

/S:任何非空白字符。

/d:數字字符匹配

/D:非數字字符匹配

/w:與以下任意字符匹配:A-Z、a-z、0-9 和下劃線

/W:與除 A-Z、a-z、0-9 和下劃線以外的任意字符匹配

[xyz]:字符集。 與任何一個指定字符匹配

[^xyz]:反向字符集。 與未指定的任何字符匹配

:對比^和[^xyz],前者爲開始的標記,後者表示反向

[a-z]:字符範圍。 匹配指定範圍內的任何字符

[^a-z]:反向字符範圍。 與不在指定範圍內的任何字符匹配

(模式):保存匹配項,  

(?:模式): 不保存匹配項,

 (?=模式): 不保存匹配項,匹配模式(匹配xxx)

(?!模式) :不保存匹配項,不匹配模式(匹配除xxx之外)

 /cx:匹配x指示的控制字符,譬如組合鍵Ctrl+M

/xn:匹配一個十六進制轉義碼,譬如/x41匹配的是A

/num:對已保存匹配項的引用,譬如(a)/1匹配aa,(a)/1/1匹配aaa,(a)/1(b)/2/2匹配ababb

 

 限定符:*、+、?、{n}、{n,} 或 {n,m}

 

 正則表達式=組合( 匹配字符串表達式, 限定符)

記錄:

[a-z][1-9]{0,1} =  [a-z]([1-9]{0,1})

不明白批註:

積極/消極的預測先行

/nm

/nml

/un

發佈了48 篇原創文章 · 獲贊 6 · 訪問量 29萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章