关于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 相关文章推荐
JS定时关闭窗口的实例
May 22 Javascript
对 jQuery 中 data 方法的误解分析
Jun 18 Javascript
javascript中String对象的slice()方法分析
Dec 20 Javascript
jQueryMobile之Helloworld与页面切换的方法
Feb 04 Javascript
深入浅出分析javaScript中this用法
May 09 Javascript
每天一篇javascript学习小结(面向对象编程)
Nov 20 Javascript
JavaScript  cookie 跨域访问之广告推广
Apr 20 Javascript
bootstrap表单示例代码分享
May 18 Javascript
浅谈mint-ui 填坑之路
Nov 06 Javascript
angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例
Aug 17 Javascript
35个最好用的Vue开源库(史上最全)
Jan 03 Javascript
详解Vue template 如何支持多个根结点
Feb 10 Javascript
快速掌握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+JS无限级可伸缩菜单详解(简单易懂)
2007/01/02 PHP
php生成圆角图片的方法
2015/04/07 PHP
php实现的debug log日志操作类实例
2016/07/12 PHP
效率高的Javscript字符串替换函数的benchmark
2008/08/02 Javascript
jquery 结合C#后台的数组对文章的关键字自动添加链接的代码
2011/07/15 Javascript
浏览器加载、渲染和解析过程黑箱简析
2012/11/29 Javascript
快速获取/设置iframe内对象元素的几种js实现方法
2016/05/20 Javascript
Jquery获取第一个子元素简单实例
2016/06/02 Javascript
JS使用正则表达式验证身份证号码
2017/06/23 Javascript
解决easyui日期时间框ie的兼容的问题
2018/03/01 Javascript
详解Angular中实现自定义组件的双向绑定的两种方法
2018/11/23 Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
2019/02/01 Javascript
详解小程序毫秒级倒计时(适用于拼团秒杀功能)
2019/05/05 Javascript
vue使用prop可以渲染但是打印台报错的解决方式
2019/11/13 Javascript
ES6中Promise的使用方法实例总结
2020/02/18 Javascript
Vue使用Three.js加载glTF模型的方法详解
2020/06/14 Javascript
vue同个按钮控制展开和折叠同个事件操作
2020/07/29 Javascript
Python模块包中__init__.py文件功能分析
2016/06/14 Python
python 随机生成10位数密码的实现代码
2019/06/27 Python
详解用python生成随机数的几种方法
2019/08/04 Python
Python 矩阵转置的几种方法小结
2019/12/02 Python
python闭包、深浅拷贝、垃圾回收、with语句知识点汇总
2020/03/11 Python
Django中ORM找出内容不为空的数据实例
2020/05/20 Python
Tensorflow卷积实现原理+手写python代码实现卷积教程
2020/05/22 Python
加拿大奢华时装品牌:Mackage
2018/01/10 全球购物
学校采购员岗位职责
2014/01/02 职场文书
2014年教师节活动总结
2014/08/29 职场文书
有限公司股东合作协议书
2014/10/29 职场文书
卖房协议书样本
2014/10/30 职场文书
2014保险公司个人工作总结
2014/12/09 职场文书
大学生党员个人总结
2015/02/13 职场文书
青年志愿者服务活动总结
2015/05/06 职场文书
使用Golang的channel交叉打印两个数组的操作
2021/04/29 Golang
Navicat for MySQL的使用教程详解
2021/05/27 MySQL
Java后台生成图片的完整步骤
2021/08/04 Java/Android
漫画「你在春天醒来」第10卷封面公开
2022/03/21 日漫