示例
`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.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
区别主要在于 match 和 search 返回值的不同
match 在正则有
g
标志的时候,返回的是一个数组,在没有匹配到的时候返回 null;而 search 无论是否有
g
,匹配到就返回第一个的位置,没有匹配到就返回 -1