正規表示式

2021-10-17 20:29:33 字數 1524 閱讀 2284

1)基礎元字元

元字元注釋\s

表示乙個空格

\s表示乙個非空格

\t表示乙個製表符(tab)

\d表示乙個數字

\d表示乙個非數字

\w表示乙個 數字字母下劃線 表示 數字 字母 下劃線 三選一就ok

\w表示乙個 非 數字字母下劃線 表示 數字 字母 下劃線 以外的任意字元就ok

.表示非換行的任意字元

\表示轉義 就是轉變原來的意思 n 表示字母n \n 就表示換行

2)邊界元字元

元字元注釋^

表示字串的開始

$表示字串的結束

^\d以數字打頭

\d$以數字結束

^\d$

以數字打頭 以數字結尾

3)限定元字元

元字元注釋*

表示出現0~到多次

+表示出現1~到多次

?表示出現0次或1次

表示出現n次

表示出現n次或多次

等價於 *

等價於 +

表示出現n次到m次

等價於 ?

4)特殊符號

元字元注釋()

表示乙個整體;單獨捕獲

(?:)

整體匹配,但是不捕獲,只是標識乙個整體,但是捕獲時並不會單獨捕獲出來

i表示或,大部分情況下,它會和()連用,表示乙個整體

表示裡面的任意乙個字元都可以 ;等價於 \s

[^]表示裡面的任意乙個都不行;等價於 \s

-表示 到 從如個字元到哪個字元 前提是它的在ascii碼中是連著的

[0-9a-za-z_]

等價於 \w

[^0-9a-za-z_]

等價於 \w

[0-9]

等價於 \d

[^0-9]

等價於 \d

在寫限定符時,在後面加乙個?

把貪婪性變成非貪婪性

5)正規表示式的識別符號語法

注釋i忽略大小寫

g全域性匹配;加了g,第1次捕獲,捕獲第1個,第2次捕獲,就會捕獲第2個…如果捕獲不到,返回null

y粘性全域性

6)正規表示式的識別符號語法

注釋?=

正向肯定預查 (當我們去捕獲乙個內容時,後面必須跟著我們選擇的乙個內容才行)

?!正向否定預查 (當我們去捕獲乙個內容時,後面必須跟著不是我們選擇的乙個內容才行)

?<=

負向肯定預查(當我們去捕獲乙個內容時,前面必須跟著我們選擇的乙個內容才行)

?負向否定預查(當我們去捕獲乙個內容時,前面必須跟著我們選擇的乙個內容才行 )

7)重複出現語法

注釋\num

\1表示\1這個位置的內容必須和第1個小括號中的內容一模一樣

\2表示\2這個位置的內容必須和第2個小括號中的內容一模一樣

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

非負整數 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正規表示式 編寫正規表示式

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