1.元字元
(1) .:匹配任何單個字元
(2) :匹配括號中的任何乙個字元
可以再括號中使用連字元「-」來指定子都的區間來簡化表示,如a[0123456789]c等價於a[0-9]c
(3) ():將()之間括起來的表示式定義為「組」
(4) |:將兩個匹配條件進行邏輯「或」運算
(z|f)ood則匹配"zood"或"food"
(5) *:匹配0至多個在它之前的子表示式,和萬用字元*沒關係。
(6) +:匹配前面的子表示式一次或多次
(7) ?:匹配前面的子表示式0次或1次
(8) :匹配確定的n次
例如,「e」 不能匹配「bed」中的「e」,但是能匹配「seed」中的兩個「e」。
(9) :至少匹配n次
例如,「e」不能匹配「bed」中的「e」,但能匹配 「seeeeeeeed」中的所有「e」。
(10):至少匹配n次,至多匹配m次「e」將匹配「seeeeeeeed」中的前三個「e」。
(11)^:匹配一行的開始
(12)$:匹配行結束符
2.簡寫表示式(注意這些簡寫表示式是不考慮轉義符的)
\d:代表乙個數字,等同於[0-9]
\d:代表非數字,等同於[^0-9]
\s:代表換行符、tab製表符等空白字元
\s:代表非空白字元
\w:匹配字母數字或下劃線或漢字。能組成單詞
\w:非\w
注:d:digital;s:space;w:word。大寫就是非
3. .net中的正規表示式
(1)regex.ismatch("bbbbg","^b.*g$");
(2)正規表示式還可以用來提取字串:
match match=regex.match("age=30",@"^(.+)=(.+)$");
if(match.success)
就可以通過match的groups屬性來得到所有的提取元素,注意groups的序號是從1開始的,0有特殊含義.
(3)字串替換
string s=regex.replace("你aaa好aa哈哈a你","a+","a");
正規表示式學習
概念 正規表示式,就是用某種模式去匹配一類字串的乙個公式。基礎 下表列出了所有的元字元和對它們的乙個簡短的描述。簡單例子 vi 命令作用 s g 把乙個或者多個空格替換為乙個空格 s 去掉行尾的所有空格 s 在每一行頭上加入乙個空格 s 0 9 0 9 去掉行首的所有數字字元 s b aeio g ...
正規表示式學習
只是點皮毛,先湊合用著了,順便鄙視一下sqlserver,居然不支援正則。b 元字元,代表著單詞的開頭或結尾,也就是單詞的分界處。d 數字 s 任意的空白符,包括空格,製表符 tab 換行符,中文全形空格等 w 字母或數字或下劃線或漢字等 匹配字串的開始 匹配字串的結束 轉義符 除換行符以外的任意字...
正規表示式學習
1 b代表單詞的開頭或結尾,也就是單詞的分解處 2 是乙個元字元,匹配除了換行符以外的任意字元,表示數量,連在一起意味著任意數量的不包含換行的字元。3 d匹配一位數字 0,或1,或2,或.不是元字元,只匹配它本身 連字元 或者減號,或者中橫線 為了避免重複也可以使用 d d。這裡 d後面的 的意思是...