位置:首页 > 软件操作教程 > 编程开发 > JavaScript > 问题详情

JavaScript 执行匹配

提问人:刘团圆发布时间:2020-11-24

使用正则表达式的eXeC()方法,可以执行通用的匹配操作。其语法格式如下:

   regexp.exec(string)

   regexp表示正则表达式对象,参数string是要检索的字符串。返回一个数组,其中存放匹配的结果。如果未找到匹配结果,则返回null。

   返回数组的第1个元素是与正则表达式相匹配的文本,第2个元素是与正则表达式的第1个子表达式相匹配的文本(如果有的话),第2个元素是与正则表达式的第2个子表达式相匹配的文本(如果有的 话),以此类推。

    除了数组元素和丨ength属性外,exec()方法还会返回下面两个属性。

    index:匹配文本的第1个字符的下标位置。

    input:存储被检索的原型字符串,即参数string自身。


    在全局模式下,exec()方法和String.match()方法返回的结果不同。当调用exec()方法时,会为正则表达式对象定义lastlndex属性,指定执行下一次匹配的起始位置,同时返回匹配数组,与非全局模式下的数组结构相同,而String.matCh()仅返回匹配文本组成的数组,没有附加信息。因此,在全局模式下获取完整的匹配信息只能使用execQ方法。

    当exec()方法找到了与表达式相匹配的文本后,会重置lastlndex属性为匹配文本的最后一个字符下标位置加1,为下一次匹配设置起始位置。因此,通过反复调用execO方法可以遍历字符串,实现全局匹配操作,如果找不到匹配文本时,将返回null,并重置lastlndex属性为0。

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部