match.exec深入学习

注意:全局的情况下,match返回的是全部匹配的。exec返回的是他匹配的第一个,以及他的子匹配

1

首先match和exec的用法

/d/.exec("ddss3");

"ddss33".match(/d/)

//都得到["3"]

2

/d/g.exec("ddss33")

"ddss33".match(/d/g)

//["3"]

//["3", "3"]

结论:g全局下:exec在没有分组的情况下只返回第一个元素,match返回全部符合的

3

/(w)d/.exec("ddss33")

"ddss33".match(/(w)d/);

//非全局g下有分组返回的结果相同为["s3", "s"]

4
/(w)d/g.exec("ddss33dd3")
"ddss33dd3".match(/(w)d/g)
全局g下有分组返回的结果
["s3", "s"]
["s3", "d3"]
 
原文地址:https://www.cnblogs.com/heyinwangchuan/p/6384580.html