定義:描述了一種字串的匹配模式
作用:1. 檢查乙個串是否含有某種子串;2. 將匹配的子串替換;3. 從某個串中取出符合某個條件的子串
語法:
// 1. 通過new regexp() 方法建立乙個正則
// 2. 通過test() 方法檢測是否符合要求 符合返回true 否則返回false
let reg =
newregexp
(/taylor+/);
let val =
"taylor songs"
;console.
log(reg.
test
(val));
// true
普通字元
字元描述
[abc]
匹配字串中是否存在[…]的內容,對大小寫敏感,例如:let reg = new regexp(/[『taylor』]/g); let val = 「taylor songs」; console.log(reg.test(val)); // true [ taylor]
[^abc]
匹配字串中除了[…]中字元的所有字元,對大小寫敏感,例如:let reg = new regexp(/[』^taylor ']/g); let val = 「taylor songs」; console.log(reg.test(val)); // true [ songs]
[ a-z]
表示乙個區間,匹配字串中在區間之內的所有字元(a-z表示小寫,a-z表示大寫),例如:let reg = new regexp(/[a-x]/g); let val = 「taylor songs」;console.log(reg.test(val)); // false 若將正則改為/[a-x]/g 則可以匹配上
[^\n\r]
匹配除了換行符之外的所有字元,等價於/./g
[\s\s]
匹配所有 \s是匹配所有空白符 \s是匹配所有非空白符包括換行
[\w]
匹配字母,數字,下劃線,等價於[a-za-z0-9_]
[\w]
匹配非字母,數字,下劃線,等價於[^a-za-z0-9]
總結:在中括號中有^表示取反
元字元字元描述
\n匹配乙個換行符
\r匹配乙個回車符
\s匹配任何空白符, 包括空格,製表符,換頁符
\s匹配任何非空白符
\d匹配乙個數字字元,等價於[0-9]
\d匹配乙個非數字字元,等價於[^0-9]
特殊字元
如要匹配特殊字元,首先需要使字元轉義,即將反斜槓字元 \ 放在他們前面
字元描述
$匹配字串結尾位置的字元,如需匹配$這一特殊字元需要利用\將其轉義,即使用 \ $ 來匹配$字元
()用於分組,如需匹配 ( 和 ) 這一特殊字元需要利用\將其轉義,即使用 \ ( 或 \ ) 來匹配( )字元
*匹配該符號之前的子表示式出現過零次或多次,如需匹配這一特殊字元需要利用\將其轉義,即使用 \ * 來匹配字元
+匹配該符號之前的子表示式出現過一次或多次,如需匹配+這一特殊字元需要利用\將其轉義,即使用 \ +來匹配+字元
.匹配除了換行符\n之外的任何單字元,如需匹配 . 這一特殊字元需要利用\將其轉義,即使用 \ . 來匹配.字元
[表示子表示式的開始,如需匹配[這一特殊字元需要利用\將其轉義,即使用 \ [ 來匹配字元
?匹配該符號之前的子表示式出現過零次或一次;如需匹配?這一特殊字元需要利用\將其轉義,即使用 \ ?來匹配?字元
\將下乙個字元標記為或特殊字元、或原義字元、或向後引用、或八進位制轉義符。例如, 『n』 匹配字元 『n』。』\n』 匹配換行符。序列 『\』 匹配 「」,而 『(』 則匹配 「(」
^若不是在中使用,則匹配開始位置的字元,若是在中使用,則匹配方括號表示式之外的字元;如需匹配^這一特殊字元需要利用\將其轉義,即使用 \ ^ 來匹配 ^字元
, , ) 後面時,匹配模式是非貪婪的。非貪婪模式盡可能少的匹配所搜尋的字串,而預設的貪婪模式則盡可能多的匹配所搜尋的字串
非負整數,匹配該符號之前的子表示式出現過n次
非負整數,匹配該符號之前的子表示式至少出現過n次
n和m均是非負整數,n<=m,匹配該符號之前的子表示式至少n次,最多m次 ;注意:在逗號和兩個數字之間不能有空格
定位符作用:能將正規表示式固定到行首或者行尾的位置
注意:定位符不能與限定符一起使用,因為定位符只能是乙個位置
字元表述
^定位到字元的開始位置;還能與\r \n 之後的位置匹配
$定位到字元的結尾位置;還能與\r \n 之前的位置匹配
\b匹配單詞邊界;即字與空格之間的位置 [開頭,空格,結尾都可看作邊界];如果\b位於要匹配的字元之前就會在字元的開始處查詢;如果\b位於要匹配的字元之後就會在字元的結尾處開始查詢
\b匹配非單詞邊界
修飾符(標記)
字元表述
/i不區分大小寫
/g全域性匹配,查詢所有匹配項
/m多行匹配,使邊界字元^和$匹配每一行的開頭和結尾
/s預設情況下的圓點 . 是 匹配除換行符 \n 之外的任何字元,加上 s 修飾符之後, . 中包含換行符 \n
正規表示式 正規表示式 總結
非負整數 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正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...