正規表示式
是一種匹配文字的模式。
^ 匹配必須出現在字串開頭或者行的開頭
$ 匹配必須出現在字串結尾或者行的結尾
string str = "i am april.";
string str2 = regex.replace(str, "^", "hi,"); //str2 = "hi,i am april."
string str3 = regex.replace(str, "$", "welcome"); //str3 = "i am april.welcome"
\w 匹配字母,數字,下劃線
\w 匹配字母,數字,下劃線 以外的字元
\s 匹配任意空白符
\s 匹配空白符以外的字元
\d 匹配數字
\d 匹配數字以外的字元
string str = "123456"; //檢查是否全為數字
bool ismatch = regex.ismatch(str, @"^\d*$"); //ismatch = true
匹配中括號中的任意乙個字元, [abc] 表示匹配abc中的任意乙個,[a-z]表示匹配a-z中的任意乙個.
[^a] 匹配a以外的任意乙個字元
string str = "hi,april"; //匹配apr以外的字元並替換為*
string str2 = regex.replace(str, @"[^apr]", "*"); //str2 = "***apr**"
匹配前面的字元n次
匹配前面的字元n次或多於n次
匹配前面的字元n次到m次
? 重複零次或一次
+ 重複一次或多次
* 重複零次或多次
string str = "1048032143"; //檢測是否為5-12位數字
bool result = regex.ismatch(str, @"^\d$"); //result = true
| 或運算,滿足其中乙個匹配條件即可。
string str = "hi,april,age:22";
matchcollection results = regex.matches(str, @"\d|[a-z]|[a-z]"); //匹配數字或字母
foreach (match result in results)
//hiaprilage22
string str = "hi,april,age:22"; //用:或,分割字串
string res = regex.split(str,@"[:,]"); //res =
()對表示式分組,如 @"(ab\w)" 等價於 @"ab\wab\w"
string str = "hi!,hi!,april";
string res = regex.replace(str, @"(hi\w)","hello"); //helloapril
C 中的正規表示式
字元 描述 將下乙個字元標記為乙個特殊字元 或乙個原義字元 或乙個 向後引用 或乙個八進位制轉義符。例如,n 匹配字元 n 匹配乙個換行符。序列 匹配 而 則匹配 匹配輸入字串的開始位置。如果設定了 regexp 物件的 multiline 屬性,也匹配 或 之後的位置。匹配輸入字串的結束位置。如果...
C 中的正規表示式
位置匹配符 表示一行文字的開始位置 表示一行文字的結束位置 如 表示式 cat 匹配的單詞cat出現在行的開始處,注意 是乙個位置字元,不是要匹配字元的本身。同樣,表示式 cat 匹配的單詞cat出現來一行的結尾處。方括號 它表示匹配括號中字元中的乙個 例如 我們要查詢文字中,所有包含 gray或者...
C 中的正規表示式
c 中的正規表示式 jeffrey e.f.friedl寫了一本關於正規表示式的書 精通正規表示式 作者為了使讀者更好的理解和掌握正規表示式,編造了乙個故事。該書的語言以perl為主。據我所知c 中的正規表示式也是基於perl5。所以它們應該有許多的共同之處。其實,我並不打算原封不動的對該書的內容進...