技术文章 > Web开发 >  JavaScript > 正文

js中match和exec区别

宋宋大人

在JavaScript中,可以提取匹配项的函数有两个,即exec函数和match函数,但是他们在调用方式、全局匹配和对参数 g 的解释有很大的不同,本文将从这三个角度向大家分析JavaScript中exec函数和match函数的不同。

一、调用方式不同

exec函数是正则表达式对象的函数,参数为字符串。

使用格式

reg.exec(str)

match函数是字符串的函数,参数为正则表达式对象。

使用格式

str.match(regexp)

二、全局匹配不同

全局匹配时,exec仅匹配单次匹配上的内容,而match会返回所有匹配上的内容;

全局匹配且进行多次匹配时,exe会从上次匹配结束的下一位开始匹配,返回本次匹配上的内容,直至无可以匹配的内容,返回null。

三、对参数 g 的解释不同

exec方法

有g的时候,exec每次执行会呈现出递进的特性,否则每次执行的结果都是相同的

有捕获组的时候,总会返回当前匹配项的捕获组

match方法

有g的时候,会返回所有匹配项,没有g的时候只会返回第一个匹配项

有捕获组的情况下,只有在没有g的情况下,才会返回第一个匹配项的捕获组

以上就是js中match和exec区别,希望能帮助你理解区别,更多js学习推荐:js教程

免费视频教程
本文原创发布python学习网,转载请注明出处,感谢您的尊重!
相关文章
 如何使用python实现项目进度显示?
 python中glob库是什么?
 如何使用Python爬取BOSS职位薪酬?
 python如何将九九乘法表写入到Excel?
 python中ruamel.yaml模块是什么?
 python中如何实现自动化操纵浏览器?
相关视频章节
 Python概述
 python注释
 python命名规范
 Python语言简介
作者信息
视频教程分类