JavaScriptRegex

來源:互聯網
上載者:User

標籤:

NOTE: 在Regex中,許多標點符號具有特殊的含義。它們是:

^ $ . * + ? = ! : | \ / ( ) [ ] { }

 

Regex的直接量字元
字元 匹配
字母數字字元 自身
\0 NUL字元(\u0000)
\t 定位字元(\u0009)
\n 分行符號(\u000A)
\v 垂直定位字元(\u000B)
\f 換頁符(\u000C)
\r 斷行符號(\u000D)
\xnn 由十六進位數nn指定的拉丁字元,例如,\x0A等價於\n
\uxxxx 由十六進位xxxx指定的Unicode字元,例如,\u0009等價於\t
\cX 控制字元^X。例如,\cJ等價於分行符號\n

 

Regex的字元類
字元 匹配
[...] 位於括弧之內的任一字元
[^...] 不在括弧之中的任一字元
. 除分行符號和其他Unicode行終止符之外的任一字元
\w 任意ASCII單字字元,等價於[a-zA-Z0-9_]
\W 任意非ASCII單字字元,等價於[^a-zA-Z0-9_]
\s 任何Unicode空白符 空格 定位字元 換頁符
\S 任何非Unicode空白符的字元,注意\w和\S不同
\d 任意ASCII數字,等價於[0-9_]
\D 除了ASCII數字之外的任何字元,等價於[^0-9_]
[\b] 退格直接量(特例)

 

Regex的重複字元
字元 含義
{n,m} 匹配前一項至少n次,但是不能超過m次
{n,} 匹配前一項n次,或更多次
{n} 匹配前一項恰好n次
? 匹配前一項0次或1次,也就是說前一項是可選。等價於{0,1}
+ 匹配前一項1次或多次,等價於{1,}
* 匹配前一項0次或多次,等價於{0,}

 

Regex的選擇、分組和引用字元
字元 含義
| 選擇。匹配的是該符號左邊的子運算式或右邊的子運算式
(...) 組合。將幾個公事包為一個單元,這個單元可由*、+、?和|等符號使用,而且還可以記住和這個組合匹配的字元以供此後的引用使用
(?:...) 只組合。把公事包到一個單元,但是不記憶與該組匹配的字元
\n 和第n個分組第一次匹配的字元相匹配。組是括弧中的子運算式(可能是嵌套的)。組號是從左至右計數的左括弧數,以(?:形式分組的組不編碼

 

Regex的錨字元
字元 含義
^ 匹配字串的開頭,在多行檢索中,匹配一行的開頭
$ 匹配字串的結尾,在多行檢索中,匹配一行的結尾
\b 匹配一個詞語的邊界。簡而言之,就是位於字元\w和\W之間的位置,或位於字元\w和字串的開頭或結尾之間的位置(但注意,[\b]匹配的是退格符)
\B 匹配非詞語邊界的位置
(?=p) 正前向聲明,要求接下來的字元都與模式p匹配,但是不包括匹配中的那些字元
(?!=p) 反前向聲明,要求接下來的字元不與模式p匹配

 

Regex的標誌

 

字元 含義
i 執行不區分大小寫匹配
g 執行一個全域匹配。簡而言之,即找到所有匹配,而不是在找到第一個之後就停止
m 多行模式,^匹配一行的開頭或字串的開頭,$匹配一行的結尾或字串的結尾

JavaScriptRegex

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.