var reg=/([^&=]+)=([^&=]*)/ig;
求前輩幫忙講解下,上述正規表示式;它可以匹配處查詢字串中的名/值對,但是實在看不懂,這是怎麼一個匹配規則? ? 如&name=bob&age=10,他可以符合出 name=bob 和age=10
我來嘗試講解一下:
//ig 表示 忽略大小寫,全域搜尋
//ig
詳情看: js正規表示式物件
([^&=]+)=([^&=]*)
這個正規表示式可以分作3部分看:
1) ([^&=]+)
([^&=]+)
表示 符合1到n(n>1)個非 '&','='的字元
2) =表示匹配 = 號(只有一個)
=
3) ([^&=]*)
([^&=]*)
與1) 的意義相近,不過表示的數目有所不同:
符合 0到n(n為任意正整數)個非 '&','='的字元
這裡面需要注意的有這些點:
a) 正規表示式量詞
b) 正規表示式分組和分組在不同模式下的回傳
最後,正規表達式不是一個容易上手的概念,幾道題目或者情況並不能夠讓你就熟練的使用它,建議多思考,多提問.
我來嘗試講解一下:
//ig
表示 忽略大小寫,全域搜尋詳情看: js正規表示式物件
這個正規表示式可以分作3部分看:
1)
([^&=]+)
表示 符合1到n(n>1)個非 '&','='的字元
2)
=
表示匹配 = 號(只有一個)
3)
([^&=]*)
與1) 的意義相近,不過表示的數目有所不同:
符合 0到n(n為任意正整數)個非 '&','='的字元
這裡面需要注意的有這些點:
a) 正規表示式量詞
b) 正規表示式分組和分組在不同模式下的回傳
最後,正規表達式不是一個容易上手的概念,幾道題目或者情況並不能夠讓你就熟練的使用它,建議多思考,多提問.