簡單匹配
我們首先從使用Regex、Match類的簡單表達式開始學習。
Match m = Regex.Match("abracadabra", "(a|b|r)+");
我們現在有了一個可以用於測試的Match類的實例,例如:if (m.Success)...
如果想使用匹配的字符串,可以把它轉換成一個字符串:
Console.WriteLine("Match="+m.ToString());
這個例子可以得到如下的輸出: Match=abra。這就是匹配的字符串了。
字符串的替換
簡單字符串的替換非常直觀。例如下面的語句:
string s = Regex.Replace("abracadabra", "abra", "zzzz");
它返回字符串zzzzcadzzzz,所有匹配的字符串都被替換成了zzzzz。
現在我們來看一個比較復雜的字符串替換的例子:
string s = Regex.Replace(" abra ", @"^\s*(.*?)\s*$", "$1");
這個語句返回字符串abra,其前導和後綴的空格都去掉了。
上面的模式對於刪除任意字符串中的前導和後續空格都非常有用。在C#中,我們還經常使用字母字符串,在一個字母字符串中,編譯程序不把字符“ \” 作為轉義字符處理。在使用字符“\”指定轉義字符時,@"..."是非常有用的。另外值得一提的是$1在字符串替換方面的使用,它表明替換字符串只能包含被替換的字符串。