C# 正則表達(dá)式基礎(chǔ)

?正則表達(dá)式

?Regex類

?元字符

?正則表達(dá)式通常用來(lái)檢查,檢索,替換符合某個(gè)格式的文本


?元字符:

?正則表達(dá)式語(yǔ)言由兩種基本字符組成

?原義(正常)文本字符和元字符

?元字符使用正則表達(dá)式具有處理能力.

^ 表示開(kāi)頭

?$ 表示結(jié)尾

?* 匹配0次或者多次

?? 0 or 1

?+ 1 or more

?\w 表示字母數(shù)字下劃線,漢字任意字符

?\d 表示數(shù)字

?\D 表示非數(shù)字

?\s表示字符串

?\S表示非空白字符

?[\s\S] 表示任意字符

?[\s\S]* 表示0到任意字符

?[\s\S]*? 0個(gè)字符,匹配任意個(gè)字符前的次數(shù)

?[a-A] 表示在某個(gè)范圍內(nèi)的字符,與指定區(qū)間內(nèi)任何字符進(jìn)行皮誒

?\u4e00-\u9fa5 表示中文

?| 或

?() 分組

?{n,m} 表示最少n最高m

?{n,} 最少匹配n次

?{n}? 匹配前面的字符最少n次

?[^X] 表示除了X除外任意字符



//演示在開(kāi)頭處拼接

string str = "大家好";

string newstr = Regex.Replace (str, "^", "首長(zhǎng):");

Console.WriteLine (newstr);

//演示在尾部處拼接

string newstr1 = Regex.Replace (str, "$", "啊");

Console.WriteLine (newstr1);


以數(shù)字開(kāi)頭中間有N個(gè)數(shù)字,以中文結(jié)尾.

string str1 = "124543好";

string newstr2 = @"^\d*[\u4e00-\u9fa5]$";

if (Regex.IsMatch (str1, newstr2)) {

Console.WriteLine ("匹配成功");

}

//匹配郵箱

string strl = "zhaoningyu@lanou3g.com";

string newstr3 = @"^\w+@\w+\.\w+$";

if (Regex.IsMatch (strl, newstr3)) {

Console.WriteLine ("匹配成功");

}



//檢索特殊字符

string a = "#$4 16525";

string a1 = @"[^\s\w]+";

MatchCollection mc = Regex.Matches (a, a1);

Console.WriteLine (mc.Count);

foreach (Match item in mc) {

Console.WriteLine (item);

}



以上是正則表達(dá)式的一些基礎(chǔ)用法.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容