正規表示式

2021-07-09 04:15:06 字數 1239 閱讀 3246

正規表示式分為標準正規表示式和擴充套件正規表示式

標準正規表示式:僅支援最基本的元字符集

1:行首定位符 ^

表示行首的字元是^後面的那個字元

2:行尾定位符 表示

行尾的字

符是前面的那個字元

3:單個字元匹配 .

圓點.用來匹配任意的單個字元,包括空格,但是不包括換行符」\n」

4:限定符*

限定符*本身不表示任何字元,用來指定其前面的乙個字元必須重複出現0次或者多次。

5:字符集匹配

用來指定乙個字符集集合的,只要乙個字串中出現了內的乙個字元就匹配,內可以使用-表示連續的字元

[abcd1234] [a-d1-4]表示的都一樣

6:字符集不匹配[^]

不匹配中的任何內容,用法與相同

注意 裡面匹配的都是單個字元而不是乙個字串

擴充套件正規表示式

1:限定符+

+前面的那個字元必須至少出現一次

2:限定符?

指定前面的那個字元最多出現1次(0 or 1)

3:豎線| 和圓括號()

豎線表示多個正規表示式之間是或的關係,圓括號表示一組可選值的集合,豎線和圓括號常常在一起使用。

注意:要在|和( )前面加\轉義

4:自定義次數匹配x or x or x (限定符{}僅僅作用於字元或者集合(「()」表示的是乙個集合))

最少出現m次最多出現n次和 只出現m次,最少出現m次

注意:要在前加\轉義

posix字元類

[:alnum:] 匹配任意乙個字母或者數字

[:alpha:] 任意乙個字母

[:digit:] 任意乙個數字

[:lower:] 任意乙個小寫字母

[:upper:] 任意乙個大寫字母

[:space:] 任意乙個空白字元,包括空格,製表符,換行符,以及分頁符

[:blank:] 空格和製表符

[:punct:] 匹配任意乙個標點符號

注意:字元類也需要放在括號中如[[:alnum:]]

運算子的優先順序

\ 轉義符

方括號表示式

() 分組

*,+ ? 限定符

普通字元

定位符

或運算

正規表示式 正規表示式 總結

非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...

正規表示式 表示式

網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...

Linux正規表示式 編寫正規表示式

為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...