正規表示式學習

2021-07-30 03:56:12 字數 1163 閱讀 2286

(1)\b:元字元,代表著單詞的開頭或結尾   (\bhi\b)

(2),.是另乙個元字元,匹配除了換行符以外的任意字元(\bhi\b.*\bhob\b)  這個時候的*代表數量

(3)\d是個新的元字元,匹配一位數字(0\d\d\d-\d\d\d\d\d或0\d-\d)

(4)\s匹配任意的空白符,包括空格,製表符(tab),換行符,中文全形空格等。

(5)\w匹配字母或數字或下劃線或漢字等(\ba\w*\b)

(6)\d+匹配1個或更多連續的數字。這裡的+是和*類似的元字元,不同的是*匹配重複任意次(可能是0次),而+則匹配重複1次或更多次,?重複零次或一次()

(7)元字元^匹配字串的開始和$都匹配字串的結束(^\d$)

(8)想查詢元字元本身的話,用轉義符\(\*\.\,\\)

(9)[aeiou]就匹配任何乙個英文母音字母,[.?!]匹配標點符號(.或?或!)

(10)[0-9]代表的含意與\d就是完全一致,同理[a-z0-9a-z_]也完全等同於\w

(11)分枝條件『|』,意思就是或。(例:0\d-\d|0\d-\d  \(0\d\)[- ]?\d|0\d[- ]?\d)

(12)分組'()':表示整體(例子:((2[0-4]\d|25[0-5]|[01]?\d\d?)\.)(2[0-4]\d|25[0-5]|[01]?\d\d?))

(13)反義:

\w:匹配任意不是字母,數字,下劃線,漢字的字元

\s:匹配任意不是空白符的字元

\d:匹配任意非數字的字元

\b:匹配不是單詞開頭或結束的位置

[^x]:匹配除了x以外的任意字元

[^aeiou]:匹配除了aeiou這幾個字母以外的任意字元

(14)後向引用用於重複搜尋前面某個分組匹配的文字(\b(\w+)\b\s+\1\b:(\b(\w+)\b),這個單詞會**獲到編號為1的分組中,最後那個\1重新又匹配一次)

(15)負向零寬斷言;\b\w*q(?!u)\w*\b

(16)小括號的另一種用途是通過語法(?#comment)來包含注釋。例如:2[0-4]\d(?#200-249)|25[0-5](?#250-255)|[01]?\d\d?(?#0-199)。

(17)貪婪匹配:a.*b搜尋到aabab,懶惰匹配:a.*?b搜尋到aab

正規表示式學習

概念 正規表示式,就是用某種模式去匹配一類字串的乙個公式。基礎 下表列出了所有的元字元和對它們的乙個簡短的描述。簡單例子 vi 命令作用 s g 把乙個或者多個空格替換為乙個空格 s 去掉行尾的所有空格 s 在每一行頭上加入乙個空格 s 0 9 0 9 去掉行首的所有數字字元 s b aeio g ...

正規表示式學習

1.元字元 1 匹配任何單個字元 2 匹配括號中的任何乙個字元 可以再括號中使用連字元 來指定子都的區間來簡化表示,如a 0123456789 c等價於a 0 9 c 3 將 之間括起來的表示式定義為 組 4 將兩個匹配條件進行邏輯 或 運算 z f ood則匹配 zood 或 food 5 匹配0...

正規表示式學習

只是點皮毛,先湊合用著了,順便鄙視一下sqlserver,居然不支援正則。b 元字元,代表著單詞的開頭或結尾,也就是單詞的分界處。d 數字 s 任意的空白符,包括空格,製表符 tab 換行符,中文全形空格等 w 字母或數字或下劃線或漢字等 匹配字串的開始 匹配字串的結束 轉義符 除換行符以外的任意字...