1、用法
match()方法可以字符串中檢索指定的值,或者是匹配一個或多個正則表達式
2、返回值
該方法類似於indexOf()/lastIndexOf(),區別就是返回值不一樣
indexOf()/lastIndexOf() 返回檢索字符所在的位置
match()方法是返回一個存放匹配結果的數組,這個數組的內容依賴於正則regexp中是否具有全局標識g
如果reg具有全局標識g的話,就會全局檢索,找到所有匹配的字符串,如果沒有找到匹配的文本就返回null,否則就會返回一個存放匹配結果的數組,該數組存放所有的匹配結果的數組
如果reg沒有全局標識的話,只能執行一次檢索匹配,如果沒有找到匹配的文本就返回null,否則就會返回一個存放匹配結果的數組,該數組的第0個元素存放的是匹配文本,其他的元素是與正則表達式匹配到的文本。返回匹配結果的數組中還含有兩個對象屬性,分別是index屬性和input屬性;index屬性是匹配結果的開始字符在字符串中的位置,input屬性是對subobj的引用
代碼如下:
var str="1 push 2 pop 3 pop 4 push";
let reg1 = /\d+/g; // 帶有全局標識g let reg2 = /\d+/; // 未帶全局標識的
// 檢索一個正則表達式的匹配 console.log(str.match(reg1)); // ['1','2','3','4'] console.log(str.match(reg2)); // ['1', index:0, input:'1 push 2 pop 3 pop 4 push']
// 檢索一個字符串 console.log(str.match('push')); // ['push', index:2, input:'1 push 2 pop 3 pop 4 push' ] console.log(str.match('shift')); // null
3、語法
subobj.match(searchValue) / subobj.match(regexp)