js正規表示式 和 的區別

2021-09-03 00:12:44 字數 728 閱讀 3124

(.+)預設是貪婪匹配

(.+?)為惰性匹配

疑問號讓.+的搜尋模式從貪婪模式變成惰性模式。

var str = 'aaa123456

bbb'

<.+?>會匹配

<.+>會匹配123456

要在瀏覽器測試結果的話,輸入:

var str = 'aaa123456

bbb'

str.match(/<.+?>/);

str.match(/<.+>/);

下面舉個簡單的例子來說明。

1.貪婪匹配是先看整個字串是否匹配,如果不匹配,它會去掉字串的最後乙個字元,並再次嘗試。如果還不匹配,那麼再去掉當前最後乙個,直到發現匹配或不剩任何字元。

var str='abcdabceba'

/.+b/         //匹配乙個或多個任意字元後面跟乙個字母b

執行str.match(/.+b/)

第一次(先看整個字串是否是乙個匹配) abcdabceba 不匹配,然後去掉最後乙個字元a

第二次(去掉最後乙個字元後再匹配) abcdabceb 匹配,返回abcdabceb。

2.惰性匹配是從左側第乙個字元開始向右匹配, 先看第乙個字元是不是乙個匹配, 如果不匹配就加入下乙個字元再嘗式匹配, 直到發現匹配...

執行str.match(/.+?b/)

第一次(讀入左側第乙個字元) a 不匹配加乙個再式

第二次 ab 匹配,返回ab

js數字正規表示式,js小數正規表示式

js數字正規表示式,js小數正規表示式 是否為數字 僅正數 包括正整數 正小數 0 param value returns function isnumber value 是否為所有數字 正數 負數 包括整數 小數 0 param value returns function isnumberall...

JS 正規表示式

驗證數字的正規表示式集 驗證數字 0 9 驗證n位的數字 d 驗證至少n位數字 d 驗證m n位的數字 d 驗證零和非零開頭的數字 0 1 9 0 9 驗證有兩位小數的正實數 0 9 0 9 驗證有1 3位小數的正實數 0 9 0 9 驗證非零的正整數 1 9 0 9 驗證非零的負整數 1 9 0 ...

js正規表示式

用正規表示式模式在字串中執行查詢,並返回包含該查詢結果的乙個陣列。rgexp.exec str 引數rgexp 必選項。包含正規表示式模式和可用標誌的正規表示式物件。str 必選項。要在其中執行查詢的string物件或字串文字。說明如果exec方法沒有找到匹配,則它返回null。如果它找到匹配,則e...