Js 正則表達式特殊字符含義


字符   匹配

\o     null

\t      制表符

\n     換行符

\v     垂直制表符

\f     換頁符

\r     回車符

\xnn   由十六進制nn指定的拉丁字符 如\xoA等價於\n

\uxxx  有十六進制數xxxx指定的Unicode字符,如\u00009等價於\t

\cX    控制字符^X,如\cJ等價於\n

[…]    方括號內的任意字符

[^…]   不在方括號內的任意字符

.      出換行符和其他Unicode行終止符之外的任意字符

\w     任何ASCII字符組成的單詞 等價於[a-zA-Z0-9]

\W     任何非ASCII字符組成的單詞 等價於[^a-zA-Z0-9]

\s     任何Unicode空白符

\S      任何非Unicode空白符

\d     任何ASCII數字 等價於[0-9]

\D     除了ASCII數字之外的任何字符 等價於[^0-9]

{n,m}  匹配前一項至少n次,但不能超過m次

{n, }  匹配前一項n次或更多次

{n }   匹配前一項n次

?      匹配前一項0次或1次 等價於{0,1}

+      匹配前一項1次或多次 等價於{1,}

*      匹配前一項0次或多次 等價於{0,}

|      選擇,匹配的是該符號左邊的子表達式或右邊的子表達式

(…)    組合,將幾個項組合為一個單元,這個單元可通過*,+,?,|等符號加以修飾,而且可以記住和這個組合相匹配的字符串以供此后的引用使用

(?:…)  只組合,把項組合到一個單元,但不記憶與該組相匹配的字符

\n     和第n個分組第一次匹配的字符相匹配,組是圓括號中的子表達式(也有可能是嵌套的),組索引是從左到右的左括號數,(?:形式的分組不編碼

^      匹配字符串的開頭,在多行檢索中,匹配一行的開頭

$      匹配字符串的結尾,在多行檢索中,匹配一行的結尾

\b     匹配一個單詞的邊界,簡言之,就是位於字符\w和\W之間的位置,或位於字符\w和字符串的開頭或結尾之間的位置(注意:[\b]匹配的是退格符)

\B     匹配一個非單詞的邊界的位置

(?=p)  零寬正向先行斷言,要求接下來的字符都與p匹配,但不能包括匹配p的那些字符

(?!p)  零寬正向先行斷言,要求接下來的字符都與不p匹配

 

修飾符

 i g m 是放在“/”符號之外的,也就是說,他們不是出現在兩條斜線之間,而是第二條斜線之后

i:執行不區分大小寫的匹配

g:執行一個全局匹配,簡言之,即找到所有的匹配,而不是在找到第一個之后就停止

m:多行匹配模式,^匹配一行的開頭和字符串的開頭,$匹配行的結束和字符串的結束

 

用於模式匹配的string方法:

Search(regx):返回第一個與之匹配的子串的起始位置,如果找不到匹配的子串,返回-1

Replace(regx,replacestr):檢索和替換

Match(regx):返回的是一個有匹配結果組成的數組

Split(regx):返回的是分割后的數組


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM