关于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 相关文章推荐
让您的菜单不离网站
Oct 03 Javascript
用JS剩余字数计算的代码
Jul 03 Javascript
js 弹出框只弹一次(二次修改之后的)
Nov 26 Javascript
javascript实现的右下角弹窗实例
Apr 24 Javascript
js绘制圆形和矩形的方法
Aug 05 Javascript
jQuery 生成svg矢量二维码
Aug 09 Javascript
JavaScript仿微博输入框效果(案例分析)
Dec 06 Javascript
使用vue与jquery实时监听用户输入状态的操作代码
Sep 19 jQuery
web3.js增加eth.getRawTransactionByHash(txhash)方法步骤
Mar 15 Javascript
bootstrap 路径导航 分页 进度条的实例代码
Aug 06 Javascript
微信小程序使用wx.request请求服务器json数据并渲染到页面操作示例
Mar 30 Javascript
使用jquery实现轮播图效果
Jan 02 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
第七节--类的静态成员
2006/11/16 PHP
MYSQL环境变量设置方法
2007/01/15 PHP
Smarty Foreach 使用说明
2010/03/23 PHP
PHP 文件上传全攻略
2010/04/28 PHP
PHP中exec函数和shell_exec函数的区别
2014/08/20 PHP
CI框架入门示例之数据库取数据完整实现方法
2014/11/05 PHP
PHP5多态性与动态绑定介绍
2015/04/03 PHP
PHP的serialize序列化数据以及JSON格式化数据分析
2015/10/10 PHP
Yii2验证器(Validator)用法分析
2016/07/23 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
2020/02/27 PHP
De facto standard 世界上不可思议的事实标准
2010/08/29 Javascript
使用jquery插件实现图片延迟加载技术详细说明
2011/03/12 Javascript
javascript淡入淡出效果的实现思路
2012/03/31 Javascript
jQuery对象数据缓存Cache原理及jQuery.data方法区别介绍
2013/04/07 Javascript
使用jquery获取网页中图片高度的两种方法
2013/09/26 Javascript
Javascript 命名空间模式
2013/11/01 Javascript
详解jquery uploadify 上传文件
2013/11/09 Javascript
JS中判断null的方法分析
2016/11/21 Javascript
详解nodejs中的process进程
2017/03/19 NodeJs
jQuery回调方法使用示例
2017/06/26 jQuery
使用OPENLAYERS3实现点选的方法
2020/09/24 Javascript
node.js文件上传重命名以及移动位置的示例代码
2018/01/19 Javascript
浅析vue 函数配置项watch及函数 $watch 源码分享
2018/11/22 Javascript
JavaScript动态检测密码强度原理及实现方法详解
2019/06/11 Javascript
vue 图片裁剪上传组件的实现
2020/11/12 Javascript
[02:07]DOTA2超级联赛专访BBC:难忘网吧超神经历
2013/06/09 DOTA
总结Python中逻辑运算符的使用
2015/05/13 Python
深入理解Python3中的http.client模块
2017/03/29 Python
在Django admin中编辑ManyToManyField的实现方法
2019/08/09 Python
Python特殊属性property原理及使用方法解析
2020/10/09 Python
css3 pointer-events 介绍详解
2017/09/18 HTML / CSS
小学一年级学生评语大全
2014/12/25 职场文书
介绍信的写法
2015/01/31 职场文书
挂职锻炼工作总结2015
2015/05/28 职场文书
总结三种用 Python 作为小程序后端的方式
2022/05/02 Python
html原生table实现合并单元格以及合并表头的示例代码
2023/05/07 HTML / CSS