JavaScript正則表達式二
阿新 • • 發佈:2017-06-30
javascript正則表達式二
m或者y。
預定義類匹配常見的字符類。
常見的預定義類字符有:.除了回車符和換行符之外的所有字符
\d 數字字符
\D 非數字字符
\s 空白符
\S 非空白符
\w 單詞字符(如數字、字母和下劃線)
\W 非單詞字符
正則表達式還提供了幾個常用的邊界匹配字符,如:^ 以前開始
$ 以末開始
\b 單詞邊界
\B 非單詞邊界
非貪婪模式:讓正則表達式盡可能少匹配,一旦匹配成功就不再匹配。
貪婪模式:讓正則表達式盡可能多匹配,匹配完所有能匹配的。
把非貪婪模式改為貪婪模式在量詞後面加上問號,如:{3,8}? 。
使用( )進行分組,使量詞作用於分組,如:(my){3}括號裏的單詞重復三遍。
使用 | 選擇她還是他,或者的意思。如(m|y)選擇
反向引用,如:2017-06-28=>06/28/2017
寫成’2017-06-28’.replace(/(\d{4})-(\d{2})-(\d{2})/g, ’$2$3$1’)
忽略分組:不希望捕獲某些分組,在分組內加上問號,如:(?:my).(ok)
常見的量詞有:?出現零次或一次(最多出現一次)
+ 出現一次或多次(最少出現一次)
* 出現零次或多次(任意次)
{n,}至少出現一次
{n}出現n次
{n,m}出現n到m次
正則表達式從文本頭部向尾部開始解析,文本尾部方向稱為“前”。
前瞻就是正則表達式匹配到規則的時候,向前檢查是否符合斷言。
後瞻則方向相反,JavaScript不支持後瞻。
符合和不符合特定斷言稱為肯定或正向匹配和負向或否向匹配。
一共有:正向前瞻exp(?=assert)
負向前瞻exp(?!=assert)
正向後顧exp(?<=assert)
負向後顧exp(?<!assert)
JavaScript正則表達式二