match方法
var str = "iid0000ffr"; var substr = str.match(/id(\S*)ff/); console.log(substr)
返回結果為:["id0000ff", "0000", index: 1, input: "iid0000ffr", groups: undefined]
()里的\S*表達式匹配所有字符串
在高級語言里,我們會用一個叫數量詞的概念:
(?=ff)這表示以ff結尾的前面的字符串,但不包括ff
var str = "iid0000ffr"; var substr = str.match(/(\S*)(?=ff)/); console.log(substr)
返回數組:["iid0000", "iid0000"]
(iid=?)這表示以iid開頭的字符串,但不包括iid
var str = "iid0000ffr"; var substr = str.match(/(iid=?)(\S*)/); console.log(substr);
返回數組:["iid0000ffr", "iid", "0000ffr"]
跟第一個示例一樣獲取前后中間的字符串
var str = "iid0000ffr"; var substr = str.match(/(iid=?)(\S*)(?=ffr)/); console.log(substr);
返回數組:["iid0000", "iid", "0000"]