1. 程式人生 > >C#正則表示式Regex類的使用

C#正則表示式Regex類的使用

C#中為正則表示式的使用提供了非常強大的功能,這就是Regex類。這個包包含於System.Text.RegularExpressions名稱空間下面,而這個名稱空間所在DLL基本上在所有的專案模板中都不需要單獨去新增引用,可以直接使用。

1、定義一個Regex類的例項


Regex regex = new Regex(@"\d");
這裡的初始化引數就是一個正則表示式,“\d”表示配置數字。

2、判斷是否匹配

判斷一個字串,是否匹配一個正則表示式,在Regex物件中,可以使用Regex.IsMatch(string)方法。

regex.IsMatch("abc"); //返回值為false,字串中未包含數字
regex.IsMatch("abc3abc"); //返回值為true,因為字串中包含了數字

3、獲取匹配次數

使用Regex.Matches(string)方法得到一個Matches集合,再使用這個集合的Count屬性。

regex.Matches("abc123abc").Count; 
返回值為3,因為匹配了三次數字。

4、獲取匹配的內容

使用Regex.Match(string)方法進行匹配。

regex.Match("abc123abc").Value;
返回值為1,表示第一個匹配到的值。

5、捕獲

正則表示式中可以使用括號對部分值進行捕獲,要想獲取捕獲的值,可以使用Regex.Match(string).Groups[int].Value來獲取。

Regex regex = new Regex(@"\w(\d*)\w"); //匹配兩個字母間的數字串
regex.Match("abc123abc").Groups[0].Value; //返回值為“123”。