正規表示式

2021-10-22 08:38:29 字數 1563 閱讀 6953

正規表示式就是用於描述這些規則的工具。換句話說,正規表示式就是記錄文字規則的**

/^abc/i 兩條斜線中間是正則主體

以/開頭,以/結束

[a-z] 可以用來匹配任意位置上的小寫字母: 「…a…」

1 只能匹配以小寫字母為行首的行: 「a…」

[a-z]$ 只能匹配以小寫字母為行尾的行: 「…a」

2$ 應該只能匹配只有乙個小寫字母的行: 「a」

g:全域性匹配

i:區分大小寫

m:換行匹配

【0-9】

【a-z】

【a-z】

【abc】

【0-9a-za-z】

匹配n次,意思就是只能有n個字元

匹配 >=n次 意思就是最少有n個字元

匹配n-m次 意思就是只能有n-m個字元

? 匹配 0 || 1 次

\d:匹配任意數字,等價於 [0-9]

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

\w:匹配任意基本拉丁字母表中的字母和數字,以及下劃線;等價於 [a-za-z0-9_]

\w:匹配任意非基本拉丁字母表中的字母和數字,以及下劃線;\w 的補集

\s:匹配乙個空白符,包括空格、製表符、換頁符、換行符和其他 unicode 空格

\s:匹配乙個非空白符;\s的補集

\b:匹配乙個零寬單詞邊界,如乙個字母與乙個空格之間;例如,/\bno/ 匹配 「at noon」 中的 「no」,/ly\b/ 匹配 「possibly yesterday.」 中的 「ly」

\b:匹配乙個零寬非單詞邊界,如兩個字母之間或兩個空格之間;例如,/\bon/ 匹配 「at noon」 中的 「on」,/ye\b/ 匹配 "possibly yesterday."中的 「ye」

\t:匹配乙個水平製表符(tab)

\n:匹配乙個換行符(newline)

\r:匹配乙個回車符(carriage return)

\特殊字元 匹配特殊字元 比如 /\ // 用來匹配/

一是所有基礎表示式預設都能且只能匹配乙個字元,二是除非其後給出限定符另外指出匹配次數,三是限定符只限定在其前面的那乙個表示式(^定位符只對其後乙個表示式生效,$定位符只對其前乙個表示式生效)

舉例:字串;tel:086-0666-88810009999

原始正則:"^tel:[0-9]-[0][0-9]-[0-9]katex parse error: undefined control sequence: \d at position 101: …價簡寫後正則寫法:"^tel:\̲d̲-[0]\d有不同的意思。

() 是為了提取匹配的字串。表示式中有幾個()就有幾個相應的匹配字串。

(\s*)表示連續空格的字串。

是定義匹配的字元範圍。比如 [a-za-z0-9] 表示相應位置的字元要匹配英文本元和數字。[\s*]表示空格或者*號。

{}一般用來表示匹配的長度,比如 \s 表示匹配三個空格,\s表示匹配一到三個空格。

最後需要指出的是,new regexp(「e」)與上面的表示式正則,在表示式沒有優化的情況下,兩者是沒有什麼效能上的差異的

a-z ↩︎

a-z ↩︎

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

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

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