C# 正則表示式的一些語法筆記
阿新 • • 發佈:2018-11-05
基礎語法看這裡:正則表示式語法
下面是一些其他要注意的點……
反斜槓 + 元字元 表示匹配元字元本身。
eg:元字元.
表示除換行符以外的任意字元,而\.
表示匹配.
。一般定義正則表示式字串時會加上
@
,表示不轉義。
eg:string pattern = @"\bn\S*ion\b";
如果要匹配雙引號則需要用兩個雙引號。
eg:string pattern = "href=""\S+";
可以把可替換的字元放在方括號中。
eg:ma[n|p]
可匹配man
或map
。
在方括號中,也可以制定一個範圍,例如[a-z]
-
允許指定連續字元範圍),[B-F]
表示B到F之間的所有大寫字母,[0-9]
表示一個數字,如果要搜尋一個整數(該序列只包含0到9的字元),就可以編寫[0-9]+
。可以使用影響匹配行為的選項修改正則表示式模式。
eg:可以在Regex(pattern, options)
建構函式中的options
引數中指定正則表示式選項,其中options
是RegexOptions
列舉值的按位“或”組合。可以通過圓括號把任何字元組合成一個組。
捕獲組&非捕獲組:
正則基礎之——捕獲組
正則基礎之——非捕獲組從匹配的組中取值。
string userName = match.Result("${userName}");
string email = match.Groups["email"].Value;
命名捕獲組。
(?<name>pattern)
或(?'name'pattern)
:匹配pattern
並捕獲結果,設定name
為組名。反向引用:
正則基礎之——反向引用
參考文章:
C# 正則表示式的用法
正則表示式之捕獲組/非捕獲組