天天看點

JavaScript正規表達式——預定義類比對常見的字元類

   預定義類比對常見的字元類

1常見的預定義類字元(除了回車符和換行符之外的所有字元)  

   \d 數字字元

   \D 非數字字元

   \s 空白符

   \S 非空白符

   \w 單詞字元(如數字、字母和下劃線)

   \W 非單詞字元

2   正規表達式還提供了幾個常用的邊界比對字元

   ^ 以前開始

   $ 以末開始

   \b 單詞邊界

   \B 非單詞邊界

3   非貪婪模式

   讓正規表達式盡可能少比對,一旦比對成功就不再比對

4   貪婪模式

   讓正規表達式盡可能多比對,比對完所有能比對的

5   把非貪婪模式改為貪婪模式在量詞後面加上問号,如:{3,8}? 

6   使用( )進行分組,使量詞作用于分組,如:(my){3}括号裡的單詞重複三遍

7   使用 | 選擇她還是他,或者的意思。如(m|y)選擇m或者y

8   反向引用,如:2017-06-28=>06/28/2017

   寫成’2017-06-28’.replace(/(\d{4})-(\d{2})-(\d{2})/g, ’$2$3$1’)

9   忽略分組

   不希望捕獲某些分組,在分組内加上問号,如:(?:my).(ok)

10   常見的量詞

   ?出現零次或一次(最多出現一次)

   + 出現一次或多次(最少出現一次)

   * 出現零次或多次(任意次)

   {n,}至少出現一次

   {n}出現n次

   {n,m}出現n到m次

11   正規表達式從文本頭部向尾部開始解析,文本尾部方向稱為“前”

12   前瞻就是正規表達式比對到規則的時候,向前檢查是否符合斷言

13   後瞻則方向相反,JavaScript不支援後瞻

14   符合和不符合特定斷言稱為肯定或正向比對和負向或否向比對

   正向前瞻exp(?=assert)

   負向前瞻exp(?!=assert)

   正向後顧exp(?<=assert)

   負向後顧exp(?<!assert)

本文轉自 拉考的考拉 51CTO部落格,原文連結:http://blog.51cto.com/lakaodekaola/1943304

繼續閱讀