元字元對應說明
.匹配除換行符之外的任意字元
\w匹配字母數字下劃線,等同於:[a-za-z0-9_]
\s匹配任意空白符
\d匹配數字,等同於[0-9]
\b匹配單詞邊界
|或匹配,如 /x|y/ 正則可匹配x或y兩個字元
^匹配字串的開始
$匹配字串的結束
反義字元
對應說明
[^x]
匹配除「x」之外的所有字元,其中「x」可以為任意字元
[^xyz]
同上,匹配除「x、y、z」之外的任意字元
\w匹配除了字母、數字、下劃線之外的所有字元,等同於:[^\w]
\s匹配除空白符之外的任意字元,等同於:[^\s]
\b匹配不是單詞邊界的字元,等同於:[^\b]
\d匹配不是數字的所有字元,等同於:[^\d]
轉義字元
對應說明
\xnn
匹配十六進製制數
\f匹配換頁符,等同於:\x0c
\n匹配換行符,等同於:\x0a
\r匹配回車符,等同於:\x0d
\t匹配水平製表符,等同於:\x09
\v匹配垂直製表符,等同於:\x0b
\unnnn
匹配unicode字元,如:\u00a0
匹配字元
對應說明
*重複出現零次或多次
+重複出現一次或多次
?重複出現零次或一次
重複出現n次
至少重複出現n次
重複重現m到n次,其中,m
分組字元
對應說明
(exp)
用小圓括號進行分組,如日期中年月日的分組:/(\d)-(\d)-(\d)/
每個分組將產生分組號,從第乙個括號開始,可以使用\n的形式在正則中使用分組號,
如匹配成對出現的html標籤,可以寫成:/<(\w+)><\/\1>/
(?:exp)
匹配exp正則,但不產生分組號
exp1(?=exp2)
前瞻斷言,匹配exp1,但後面必須是exp2
如匹配名字叫xianlie,但不姓zhao的人:/zhao(?=xianlie)/
exp1(?!=exp2)
後瞻斷言,匹配exp1,但後面不能是exp2
如匹配姓zhao,但名字不叫xianlie的人:/zhao(?!xianlie)/
相關字元
對應說明
*?重複任意次,但盡可能少的重複
+?重複一次或多次,但盡可能少的重複
??重複零次或一次,但盡可能少的重複
?重複m到n次,但盡可能少的重複
?重複n次以上,但盡可能少的重複
?重複n次,但盡可能少的重複
修飾符對應說明
iignorecase的縮寫,表示忽略字母的大小寫
mmultiline的縮寫,更改^和$的含義,使它們分別在任意一行的行首和行尾匹配
,而不僅僅在整個字串的開頭和結尾匹配。
(在此模式下,$的精確含意是:匹配\n之前的位置以及字串結束前的位置.)
gglobal的縮寫,進行全域性匹配,即對字串進行全文匹配,直到字串遍歷結束
正則其實也勢利,削尖頭來把錢揣 (指開始符號^和結尾符號$)
特殊符號認不了,弄個倒槓來引路 (指\. \*等特殊符號)
倒槓後面跟小w, 數字字母來表示 (\w跟數字字母;\d跟數字)
倒槓後面跟小d, 只有數字來表示
倒槓後面跟小a, 報警符號嘀一聲
倒槓後面跟小b, 單詞分界或退格
倒槓後面跟小t, 製表符號很明了
倒槓後面跟小r, 回車符號知道了
倒槓後面跟小s, 空格符號很重要
小寫跟罷跟大寫,多得實在不得了
倒槓後面跟大w, 字母數字靠邊站
倒槓後面跟大s, 空白也就靠邊站
倒槓後面跟大d, 數字從此靠邊站
倒框後面跟大b, 不含開頭和結尾
單個字元要重複,三個符號來幫忙 (* + ?)
0 星加1 到無窮,問號只管0 和1 (*表0-n;+表1-n;?表0-1次重複)
花括號裡學問多,重複操作能力強 ( )
若要重複字串,園括把它括起來 ((abc) 表示字串「abc」重複3次 )
特殊集合自定義,中括號來幫你忙
轉義符號行不通,乙個乙個來排隊
實在多得排不下,橫槓請來幫個忙 ([1-5])
尖頭放進中括號,反義定義威力大 ([^a]指除「a」外的任意字元 )
1豎作用可不小,兩邊正則互替換 (鍵盤上與「\」是同乙個鍵)
1豎能用很多次,複雜定義很方便
園括號,用途多
反向引用指定組,數字排符對應它 (「\b(\w+)\b\s+\1\b」中的數字「1」引用前面的「(\w+)」)
支援組名自定義,問號加上尖括號 (「(?\w+)」中把「\w+」定義為組,組名為「word」)
園括號,用途多,位置指定全靠它
問號等號字串,定位字串前面 (「\b\w+(?=ing\b)」定位「ing」前面的字串)
若要定位串後面,中間插個小於號 (「(?<=\bsub)\w+\b」定位「sub」後面的字串)
問號加個驚嘆號,後面跟串字串
phper都知道, !是取反的意思
後面不跟這一串,統統符合來報到 (「\w*d(?!og)\w*」,「dog」不符合,「do」符合)
問號小於驚嘆號,後面跟串字串
前面不放這一串,統統符合來報到
點號星號很貪婪,加個問號不貪婪
加號問號有保底,至少重複一次多
兩個問號老規矩,0次1次團團轉
花括號後跟個?,貪婪變成不貪婪
還有很多裝不下,等著以後來增加。
正規表示式 正規表示式 總結
非負整數 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正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...