关于JS中match() 和 exec() 返回值和属性的测试


Posted in Javascript onMarch 21, 2016

语法:

exec() :
RegExpObject.exec(string) 
match() :
stringObject.match(string)
stringObject.match(regexp)

知识点:

exec() 是RegExp对象的方法,而 match() 是String对象的方法。
都会返回包含第一个匹配项信息的数组;或者在没有匹配项的情况下返回null。
返回的数组虽然是Array 的实例,但包含两个额外的属性:index 和 input。其中,index 表示匹配项在字符串中的位置,而 input 表示应用正则表达式的字符串。
在数组中,第一项是与整个模式匹配的字符串,其他项是与模式中的捕获组匹配的字符串(如果模式中没有捕获组,则该数组只包含一项)。

测试:

对 match() 的测试代码:

var text = "mom and dad and baby";
var pattern = /(mom and )?(dad and )?baby/;
var matches = text.match(pattern);//pattern.exec(text);
console.log(matches.index);
console.log(matches.input);
console.log(matches[0]);
console.log(matches[1]);
console.log(matches[2]);

对 match() 的测试结果截图:

关于JS中match() 和 exec() 返回值和属性的测试

对 exec() 的测试代码:

var text = "mom and dad and baby";
var pattern = /(mom and )?(dad and )?baby/;
var matches = pattern.exec(text);//text.match(pattern);
console.log(matches.index);
console.log(matches.input);
console.log(matches[0]);
console.log(matches[1]);
console.log(matches[2]);

对 exec() 的测试结果截图:

关于JS中match() 和 exec() 返回值和属性的测试

String 对象方法

方法 描述
exec 检索字符串中指定的值。返回找到的值,并确定其位置
test 检索字符串中指定的值。返回 true 或 false。

String 对象方法

方法 描述
match() 找到一个或多个正则表达式的匹配。
replace() 替换与正则表达式匹配的子串。
search() 检索与正则表达式相匹配的值。

关于JS中match() 和 exec() 返回值和属性的测试就给大家介绍到这里,希望对大家有所帮助!

Javascript 相关文章推荐
可以用鼠标拖动的DIV实现思路及代码
Oct 21 Javascript
jQuery的DOM操作之删除节点示例
Jan 03 Javascript
详解javascript实现自定义事件
Jan 19 Javascript
Javascript中级语法快速入手
Jul 30 Javascript
AngularJS实现在ng-Options加上index的解决方法
Nov 03 Javascript
聊聊Vue.js的template编译的问题
Oct 09 Javascript
JavaScript正则表达式函数总结(常用)
Feb 22 Javascript
JS跨域请求的问题解析
Dec 03 Javascript
微信小程序点击顶部导航栏切换样式代码实例
Nov 12 Javascript
详解ECMAScript2019/ES10新属性
Dec 06 Javascript
基于Ionic3实现选项卡切换并重新加载echarts
Sep 24 Javascript
jQuery实现鼠标拖动图片功能
Mar 04 jQuery
快速掌握Node.js中setTimeout和setInterval的使用方法
Mar 21 #Javascript
快速掌握Node.js事件驱动模型
Mar 21 #Javascript
快速掌握Node.js模块封装及使用
Mar 21 #Javascript
JS DOM实现鼠标滑动图片效果
Sep 17 #Javascript
实践中学习AngularJS表单
Mar 21 #Javascript
javascript单页面手势滑屏切换原理详解
Mar 21 #Javascript
javascript实现dom元素可拖动
Mar 21 #Javascript
You might like
社区(php&&mysql)五
2006/10/09 PHP
source.php查看源文件
2006/12/09 PHP
PHP 实例化类的一点摘记
2008/03/23 PHP
php smarty模版引擎中变量操作符及使用方法
2009/12/11 PHP
[原创]解决wincache不支持64位PHP5.5/5.6的问题(提供64位wincache下载)
2016/06/22 PHP
PHP接口并发测试的方法(推荐)
2016/12/15 PHP
实例分析10个PHP常见安全问题
2019/07/09 PHP
javascript 文档的编码问题解决
2009/03/01 Javascript
Javascript 检测键盘按键信息及键码值对应介绍
2013/01/03 Javascript
jquery实现像栅栏一样左右滑出式二级菜单效果代码
2015/08/24 Javascript
javascript中的try catch异常捕获机制用法分析
2016/12/14 Javascript
使用use注册Vue全局组件和全局指令的方法
2018/03/08 Javascript
对vue事件的延迟执行实例讲解
2018/08/28 Javascript
使用微信SDK自定义分享的方法
2019/07/03 Javascript
layui table 复选框跳页后再回来保持原来选中的状态示例
2019/10/26 Javascript
JavaScript工具库MyTools详解
2020/01/01 Javascript
[02:31]2018年度DOTA2最具人气选手-完美盛典
2018/12/16 DOTA
python 多进程通信模块的简单实现
2014/02/20 Python
Python中解析JSON并同时进行自定义编码处理实例
2015/02/08 Python
Python中Random和Math模块学习笔记
2015/05/18 Python
python生成词云的实现方法(推荐)
2017/06/13 Python
Django中自定义admin Xadmin的实现代码
2019/08/09 Python
python3 使用Opencv打开USB摄像头,配置1080P分辨率的操作
2019/12/11 Python
python统计文章中单词出现次数实例
2020/02/27 Python
python判断是空的实例分享
2020/07/06 Python
HTML5本地存储之Web Storage应用介绍
2013/01/06 HTML / CSS
阿里巴巴国际站:Alibaba.com
2016/07/21 全球购物
耐克中国官方商城:Nike中国
2018/10/18 全球购物
工程部主管岗位职责
2013/11/17 职场文书
医学检验专业个人求职信范文
2013/12/04 职场文书
英语专业学生个人求职信
2014/01/28 职场文书
企业安全生产责任书
2014/04/14 职场文书
生物技术专业求职信
2014/06/10 职场文书
影视广告专业求职信
2014/09/02 职场文书
Mysql Show Profile
2021/04/05 MySQL
vue Element-ui表格实现树形结构表格
2021/06/07 Vue.js