match和exec

match是字符串的方法

exec是正则的方法

两个方法都会返回一个结果数组

说一下它们的区别

 

match() 参数为正则时 返回有两种情况

1.正则没有g标志:返回的数组中依次有 [匹配的字符、(捕获分组参数)*、index 匹配开始的位置、input对整个字符串的引用 ]

2.有g标志:[每一个匹配项(有无捕获都一样)]

 

exec() 

1.没有g标志:一次只匹配一个位置,下次匹配还是从头开始

2.有g标志:一次只匹配一个位置,但下次匹配从上次结束的位置开始

返回结果都是一个数组 [匹配项、(捕获组)*、index、input]

 

 

特别注意:  exec 开启全局匹配时  并不会一次全部匹配,只是记录上次匹配的位置,下次匹配从这开始

       match开启全局时,返回的是普通数组,里面有匹配的每一项

posted on 2016-04-21 10:52  daydreamer_xyf  阅读(160)  评论(0)    收藏  举报

导航