正規表示式學習

2021-06-08 19:15:47 字數 1078 閱讀 3766

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後面的 的意思是...