第一次接觸正則

參考:https://deerchao.cn/tutorials/regex/regex.htm#mission

入門

  1. \bhi\b 查找hi,\b并不匹配這些單詞分隔字符(空格,標(biāo)點符號或者換行)中的任何一個,它只匹配一個位置
  2. \bhi\b.*\bLucy\b hi后面不遠(yuǎn)處跟著一個Lucy,.是另一個元字符,除了換行符以外的任意字符;*同樣是元字符,它代表數(shù)量
  3. 0\d\d-\d\d\d\d\d\d\d\d 以0開頭,然后是兩個數(shù)字,然后是一個連字號“-”,最后是8個數(shù)字,\d是個新的元字符,匹配一位數(shù)字。
    簡寫:0\d{2}-\d{8} 這里\d后面的{2}({8})的意思是前面\d必須連續(xù)重復(fù)匹配2次(8次)

元字符

* 重復(fù)0次和更多次,而+則匹配重復(fù)1次或更多次,?匹配重復(fù)0次或1次
. 匹配除換行符以外的任意字符
\w 匹配字母或數(shù)字或下劃線或漢字
\s 匹配任意的空白符
\d 匹配數(shù)字
\b 匹配單詞的開始或結(jié)束
^ 匹配字符串的開始
$ 匹配字符串的結(jié)束

重復(fù)

{n} 重復(fù)n次
{n,} 重復(fù)n次或更多次
{n,m} 重復(fù)n到m次

字符類

如果你想匹配沒有預(yù)定義元字符的字符集合,在方括號里列出它們
[aeiou]匹配任何一個英文元音字母
[.?!]匹配標(biāo)點符號(.或?或!)

分枝條件

如果滿足其中任意一種規(guī)則都應(yīng)該當(dāng)成匹配,具體方法是用|把不同的規(guī)則分隔開
0\d{2}-\d{8}|0\d{3}-\d{7}這個表達(dá)式能匹配兩種以連字號分隔的電話號碼:一種是三位區(qū)號,8位本地號(如010-12345678),一種是4位區(qū)號,7位本地號(0376-2233445)

反義(難)

\W 匹配任意不是字母,數(shù)字,下劃線,漢字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非數(shù)字的字符
\B 匹配不是單詞開頭或結(jié)束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou這幾個字母以外的任意字符

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

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