首頁 > web前端 > js教程 > javascript-正規表示式

javascript-正規表示式

巴扎黑
發布: 2017-07-20 14:08:55
原創
1034 人瀏覽過
From:
 
測試正規的網站:
 
## 
修飾符:
  1. g:global全文搜索,不添加,搜尋到第一個匹配停止。

  2. i:ignore case 忽略大小寫,預設大小寫敏感。

  3. m:multiple lines 多行搜尋。

  4. lastIndex:目前表達式符合內容的最後一個字元的下一個位置

  5. ##source:正規表示式的文字字串
  6.  
正規表示式有2種基本字元型別組成:
    原義文字字元(例如:abc)
  1. 元字元(例如:\b)。元字符是正規表示式中有特殊意義的非字母字元(.*+?^.|\(){}[])
  2.  
元字符:
    \t:水平製表符
  1. #\v:垂直製表符
  2. \n:換行符號
  3. \r:回車符號
  4. #\0:空白字元
  5. \f:換頁符號
  6.  
字元類別:
    [abc]:建立一個簡單的類別(例如:'a1b2c3d4'.replace(/[abc]/g,'X') =》X1X2X3d4)
  1. [^abc]:取反
範圍類別:
    [a-z]:從a到z的任意字符,包含a和z。 (例如:'a1b2c3d4aa'.replace(/[a-z]/g,'X') =》X1X2X3X4XX)
  1. [a-zA-Z]:在[]組成的類內部可以連寫的。
  2. [a,z]:分割('12345678'.replace(/[1,3]/g,'A') =》A2A45678)
預先定義類別:
    .:除了回車符和換行符號之外的所有字元([^\r\n])
  1. \d:數字字元([0-9])
  2. #\D:非數字字元([^0-9])
  3. \s:空白符號([\t\n\x0B\f\r])
  4. \S:非空白符( [^\t\n\x0B\f\r] )
  5. \w:單字字符,包含字符、數字、底線([a-zA-Z_0-9])
  6. \W:非單字字元([^a-zA-Z_0-9 ])
  7.  
邊界匹配字符:
    ^:以xxx開始('@123@abc@a'.replace(/^@./g,'X') =》X23@abc@a)
  1. $:以xxx結束('@123@abc@a'.replace(/@.$/g,'X') =》@123@abcX)
  2. #\b:單字邊界
  3. \B:非單字邊界
  4.  
量詞:
    ?:出現0次或1次
  1. #+:出現1次或多次
  2. #*:出現0次或多次
  3. {n}:出現n次
  4. {n,m}:出現n到m次
  5. {n,}:至少出現n次
##貪婪模式:正規表示式會盡可能多的匹配,直到匹配失敗。 ('12345678'.replace(/\d{3,6}/g,'A') =》A78)
非貪婪模式:盡可能少的配對。在量詞後面加上?即可。 ('12345678'.replace(/\d{3,6}?/g,'A') =》AA78)
 
分組:
使用()可以達到分組的功能,使量詞作用於分組('a1b2c3d4'.replace(/(\w\d){3}/g,'X') =》Xd4)
  1. 或|('a1b2c3d4'.replace(/(a1|b2)/g,'X') =》XXc3d4)
  2.  
#反向引用('2017-05-06'.replace(/(\d{4})-(\d{2})-(\d{2})/g,'$2/$3/$1') =》05/06/2017)
 
忽略分組:不希望捕獲某些分組,只需要在分組內加上?:就可以
 
#前瞻:在正規表示式符合到規則的時候,向前檢查是否符合斷言,後顧方向相反,JS不支援後顧。
正向前瞻:exp(?=assert)('a2*3'.replace(/\w(?=\d)/g,'X') =》X2 *3)
  1.  負向前方瞻:exp(?!assert)
  2. 正向後顧:exp(?<=assert), JS不支援。
  3. 負向後顧:erp((?
  4.  
test( str):用於測試字串參數中,是否存在符合正規表示式模式的字串。 exec(str):使用正規表示式模式對字串執行搜索,並將更新全域RegExp物件的屬性以反映符合結果。 index 宣告符合文字的第一個字元的位置,input 存放唄檢索的字串string

以上是javascript-正規表示式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板