今天就跟大家聊聊有關(guān)C#中怎么利用正則表達(dá)式匹配相關(guān)字符串,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:申請域名、虛擬主機、營銷軟件、網(wǎng)站建設(shè)、高坪網(wǎng)站維護、網(wǎng)站推廣。
1.使用C#中使用正則表達(dá)式System.Text.RegularExpressions命名空間;
2.使用C#中使用正則表達(dá)式Matches()方法匹配字符串,格式如下:
MatchCollection Matches = Regex.Matches(Str, Pattern, RegexOptions.IgnoreCase | RegexOptions.ExplicitCapture);
其中Str表示輸入字符串,Pattern表示匹配模式,RegexOptions.IgnoreCase表示忽略大小寫,RegexOptions.ExplicitCapture表示改變收集匹配方式。
3.匹配結(jié)果保存在MatchCollection集合中,可以通過循環(huán)遍歷結(jié)果集取出Match對象的結(jié)果。
TestRagular.cs:
using System; using System.Text.RegularExpressions; namespace Magci.Test.Strings { public class TestRegular { public static void WriteMatches(string str, MatchCollection matches) { Console.WriteLine("\nString is : " + str); Console.WriteLine("No. of matches : " + matches.Count); foreach (Match nextMatch in matches) { //取出匹配字符串和最多10個外圍字符 int Index = nextMatch.Index; string result = nextMatch.ToString(); int charsBefore = (Index < 5) ? Index : 5; int fromEnd = str.Length - Index - result.Length; int charsAfter = (fromEnd < 5) ? fromEnd : 5; int charsToDisplay = charsBefore + result.Length + charsAfter; Console.WriteLine("Index: {0},\tString: {1},\t{2}", Index, result, str.Substring(Index - charsBefore, charsToDisplay)); } } public static void Main() { string Str = @"My name is Magci, for short mgc. I like c sharp!"; //查找“gc” string Pattern = "gc"; MatchCollection Matches = Regex.Matches(Str, Pattern, RegexOptions.IgnoreCase | RegexOptions.ExplicitCapture); WriteMatches(Str, Matches); //查找以“m”開頭,“c”結(jié)尾的單詞 Pattern = @"\bm\S*c\b"; Matches = Regex.Matches(Str, Pattern, RegexOptions.IgnoreCase | RegexOptions.ExplicitCapture); WriteMatches(Str, Matches); } } }
看完上述內(nèi)容,你們對C#中怎么利用正則表達(dá)式匹配相關(guān)字符串有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。