示例
`var str = "abc123def";
var patt1 = /[0-9]+/;
console.log(str.match(patt1).index);`
`var str = "abc123def";
var patt1 = /[0-9]+/;
console.log(str.search(patt1));`
问题
match.index 跟 search 所得到的字符串位置有什么区别吗
`var str = "abc123def";
var patt1 = /[0-9]+/;
console.log(str.match(patt1).index);`
`var str = "abc123def";
var patt1 = /[0-9]+/;
console.log(str.search(patt1));`
match.index 跟 search 所得到的字符串位置有什么区别吗
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
3 回答868 阅读✓ 已解决
3 回答1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
区别主要在于 match 和 search 返回值的不同
match 在正则有
g
标志的时候,返回的是一个数组,在没有匹配到的时候返回 null;而 search 无论是否有
g
,匹配到就返回第一个的位置,没有匹配到就返回 -1