JavaScript中String的math方法与RegExp的exec方法的区别
1.exec是正则表达式的方法,方法参数为字符串。match为字符串的方法,参数为正则表达式对象。
2.match与exec都返回数组。如果调用exec方法的正则表达式没有分组内容,则返回第一个匹配的内容,全局匹配对它没有影响。如果正则表达式有匹配,则返回数组还包含分组匹配内容。在没有全局匹配的情况下,exec方法与match方法返回的数组一样,但是如果有全局匹配,则会返回所有匹配。如下所示:
//没有全局匹配 var str="chen,zhen";
var reg=/hen/;
alert(reg.exec(str));//返回 ["hen"]
alert(str.match(reg));//返回["hen"]
//全局匹配 var str="chen,zhen";
var reg=/hen/g;
alert(reg.exec(str));//返回 ["hen"]
alert(str.match(reg));//返回["hen","hen"]
//唯一匹配,且有分组 var str="chen,zhen";
var reg=/h(en)/;
alert(reg.exec(str));//返回 ["hen","en"]
alert(str.match(reg));//返回["hen","en"]
//全局匹配 var str="chen,zhen";
var reg=/h(en)/g;
alert(reg.exec(str));//返回 ["hen","en"]
alert(str.match(reg));//返回["hen","hen"]
JavaScript中String的math方法与RegExp的exec方法的区别的更多相关文章
- 总结JS中string、math、array的常用的方法
		JS为每种数据类型都内置很多方法,真的不好记忆,而且有些还容易记混,现整理如下,以便以后查看: 一.String ①charAt()方法用于返回指定索引处的字符.返回的字符是长度为 1 的字符串. 语 ... 
- JavaScript中String对象的match()、replace() 配合正则表达式使用
		正则表达式由来已久,查找替换功能非常强大,但模板难记复杂. JavaScript中String对象的match().replace()这2个方法都要使用正则表达式的模板.当模板内容与字符串不相匹配时, ... 
- JavaScript中判断整字类型最简洁的实现方法
		这篇文章主要介绍了JavaScript中判断整字类型最简洁的实现方法,本文给出多个判断整数的方法,最后总结出一个最短.最简洁的实现方法,需要的朋友可以参考下 我们知道JavaScript提供了type ... 
- JavaScript中typeof,instanceof,hasOwnProperty,in的用法和区别
		一. typeof操作符 typeof操作符用于返回正在使用值的类型. // 使用原始值 let mNull = null; let mUndefined = undefined; let mStri ... 
- js进阶正则表达式13RegExp对象方法(RegExp对象的方法:compile,test,exec)(子表达式 var reg1=/([a-z]+)\d/)
		js进阶正则表达式13RegExp对象方法(RegExp对象的方法:compile,test,exec)(子表达式 var reg1=/([a-z]+)\d/) 一.总结 1.RegExp对象有三个方 ... 
- JavaScript中的global对象,window对象以及document对象的区别和联系
		JavaScript中的global对象,window对象以及document对象的区别和联系 一.概念区分:JavaScript中的global对象,window对象以及document对象 1.g ... 
- JavaScript中String对象的方法介绍
		1.字符方法 1.1 charAt() 方法,返回字符串中指定位置的字符. var question = "Do you like JavaScript?"; alert(ques ... 
- Javascript中String对象的的简单学习
		第十一课String对象介绍1:属性 在javascript中可以用单引号,或者双引号括起来的一个字符当作 一个字符对象的实例,所以可以在某个字符串后再加上.去调用String 对象 ... 
- JavaScript中Global、Math、Date对象的常用方法
		JavaScript当中Global.Math.Date类型常用方法如下: /* js 中 Global对象 是一个不存在的对象,它里面的方法可以调用 常用方法: 1 encodeURI 对uri进行 ... 
随机推荐
- mysql中的游标使用案例
			DELIMITER $$ DROP PROCEDURE IF EXISTS `curTest`$$ CREATE PROCEDURE curTest(IN _myId INT) BEGIN DECLA ... 
- Java--使用多线程下载,断点续传技术原理(RandomAccessFile)
			一.基础知识 1.什么是线程?什么是进程?它们之间的关系? 可以参考之前的一篇文章:java核心知识点学习----并发和并行的区别,进程和线程的区别,如何创建线程和线程的四种状态,什么是线程计时器 简 ... 
- svn的安装配置
			之前找了一些svn的资料,一直配置不成功.然后找到了这个链接,配置成功了.还可以. http://www.cnblogs.com/zhoulf/archive/2013/02/02/2889949.h ... 
- php count函数
			最近被问到一个函数count 1.count("123456") 对应的输出是什么? 2.count(null) 对应的输出是什么? 以前没有认真的考虑,只是心里有一个印象那就是c ... 
- phpstudy 出现“请自行检查是否安装VC9运行库??”问题  --  缺少vc9库
			phpStudy是一款PHP调试环境的程序集成包,该程序包集成最新的Apache+PHP+MySQL+phpMyAdmin+ZendOptimizer,一次性安装,无须配置即可使用,是非常方便.好用的 ... 
- getElementByName()和getElementById的区别
			因为在属性中,id时唯一的,getElementById取出的是一个元素但是可以出现相同的name,取到的是一个Array ,getElementsByName取出的是数组 记录代码如下: <! ... 
- Linux 内核通知链随笔【中】
			关于内核通知链不像Netlink那样,既可以用于内核与用户空间的通信,还能用于内核不同子系统之间的通信,通知链只能用于内核不同子系统之间的通信.那么内核通知链到底是怎么工作的?我们如何才能用好通知链? ... 
- rdlc报表大小设置
			参考:http://stackoverflow.com/questions/427730/how-to-limit-rdlc-report-for-one-page-in-a-pdf 主要设置为:报表 ... 
- 一点一滴学shell
			1. 获取shell脚本的名称 ${BASH_SOURCE-$0} 2. 获取shell脚本的路径 dirname "${BASH_SOURCE-$0}" 这个路径不一定是脚本的真 ... 
- REST有状态与无状态的理解
			1. 什么是REST? REST(REpresentation State Transfer)表述性状态传递,是一种软件架构风格,是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可 ... 
