javascript正则表达式中参数g(全局)的作用


Posted in Javascript onNovember 11, 2010

我们详细描述:
1)对于表达式对象的exec方法,不加入g,则只返回第一个匹配,无论执行多少次均是如此,如果加入g,则第一次执行也返回第一个匹配,再执行第二个匹配,依次类推。例如:

var regx=/user\d/; 
var str=”user18duser2dsc”; 
var rs=regx.exec(str);//此时rs的值为{user1} 
var rs2=regx.exec(str);//此时rs的值依然是{user1}

如果regx=/user\d/g:则rs的值为{user1},rs2的值为{user2}

通过这个例子说明:对于exec方法,表达式加入了g,并不是说执行exec方法就可以返回所有的匹配,而是说加入了g以后,可以通过某种方式得到所有的匹配,这里的“方式”对于exec而言,就是执行这个方法即可。
2)对于表达式对象的test方法,加入g跟不加g没有什么区别。
3)对于String对象的match方法,不加g,也只是返回第一个匹配,一直执行match方法也总是返回第一个匹配,加入g,则一次返回所有的匹配。例如:

var regx=/user\d/; 
var str=”user1dge3user2gwe”; 
var rs=str.match(regx);//此时rs的值为{user1} 
var rs2=str.match(regx);//此时rs2的值依然为{user1}

如果regx=/user\d/g,则rs的值为{user1,user2},rs2的值也为{user1,user2}

4)对于string对象的replace方法,表达式不加g,则只替换第一个匹配,如果加入g,则替换所有匹配。

5)对于String对象的split方法,加上g与不加g是一样的,即:

var sep=/user\d/; 
var array=”user1dfsfuser2dfsf”.split(sep);

则array的值为{dfsf,dfsf},当sep=/user\d/g,返回值也是一样的。

6)对于string对象的search方法,加不加g也是一样的。

Javascript 相关文章推荐
一段多浏览器的"复制到剪贴板"javascript代码
Mar 27 Javascript
Javascript 文件夹选择框的两种解决方案
Jul 01 Javascript
Jquery 表单验证类介绍与实例
Jun 09 Javascript
script标签属性用type还是language
Jan 21 Javascript
高性能JavaScript模板引擎实现原理详解
Feb 05 Javascript
jQuery滚动监听实现商城楼梯式导航效果
Mar 06 Javascript
Vue组件和Route的生命周期实例详解
Feb 10 Javascript
Vue自定义弹窗指令的实现代码
Aug 13 Javascript
Vue+webpack项目配置便于维护的目录结构教程详解
Oct 14 Javascript
Cocos2d实现刮刮卡效果
Dec 20 Javascript
微信小程序使用for循环动态渲染页面操作示例
Dec 25 Javascript
解决node.js含有%百分号时发送get请求时浏览器地址自动编码的问题
Nov 20 Javascript
工作中常用到的JS表单验证代码(包括例子)
Nov 11 #Javascript
CSS和JS标签style属性对照表(方便js开发的朋友)
Nov 11 #Javascript
使用jquery与图片美化checkbox和radio控件的代码(打包下载)
Nov 11 #Javascript
关于firefox的ElementTraversal 接口 使用说明
Nov 11 #Javascript
将string解析为json的几种方式小结
Nov 11 #Javascript
js读取本地excel文档数据的代码
Nov 11 #Javascript
JS维吉尼亚密码算法实现代码
Nov 09 #Javascript
You might like
phpMyAdmin出现无法载入 mcrypt 扩展,请检查PHP配置的解决方法
2012/03/26 PHP
php中print(),print_r(),echo()的区别详解
2014/12/01 PHP
php实现SAE上使用storage上传与下载文件的方法
2015/06/29 PHP
php使用Imagick生成图片的方法
2015/07/31 PHP
彻底搞懂PHP 变量结构体
2017/10/11 PHP
Prototype使用指南之dom.js
2007/01/10 Javascript
javascript 带有滚动条的表格,标题固定,带排序功能.
2009/11/13 Javascript
javascript奇异的arguments分析
2010/10/20 Javascript
基于jQuery的获得各种控件Value的方法
2010/11/19 Javascript
深入理解JavaScript系列(16) 闭包(Closures)
2012/04/12 Javascript
javascript中的void运算符语法及使用介绍
2013/03/10 Javascript
代码触发js事件(click、change)示例应用
2013/12/13 Javascript
JavaScript中几种排序算法的简单实现
2015/07/29 Javascript
JS基于FileSystemObject创建一个指定路径的TXT文本文件
2015/08/05 Javascript
浅谈js中子页面父页面方法 变量相互调用
2016/08/04 Javascript
NodeJS远程代码执行
2016/08/28 NodeJs
Node.js检测端口(port)是否被占用的简单示例
2016/09/29 Javascript
Angular 4 依赖注入学习教程之FactoryProvider的使用(四)
2017/06/04 Javascript
简单实现js拖拽效果
2017/07/25 Javascript
JS实现获取自定义属性data值的方法示例
2018/12/19 Javascript
javascript刷新父页面方法汇总详解
2019/10/10 Javascript
vue组件开发之slider组件使用详解
2020/08/21 Javascript
在Python下利用OpenCV来旋转图像的教程
2015/04/16 Python
python调用xlsxwriter创建xlsx的方法
2018/05/03 Python
python调用c++传递数组的实例
2019/02/13 Python
Python datetime和unix时间戳之间相互转换的讲解
2019/04/01 Python
css3 盒模型以及box-sizing属性全面了解
2016/09/20 HTML / CSS
英国最大的电子零件及配件零售商:Partmaster
2017/04/24 全球购物
英国网上购买肉类网站:Great British Meat
2018/10/17 全球购物
巴西手表购物网站:eclock
2019/03/19 全球购物
卡拉威高尔夫官方网站:Callaway Golf
2020/09/16 全球购物
意大利和国际奢侈品牌购物网站:Suitnegozi.com
2021/01/15 全球购物
会计毕业生求职简历的自我评价
2013/10/20 职场文书
公司委托书怎么写
2014/08/02 职场文书
小浪底导游词
2015/02/12 职场文书
Python字符串格式化方式
2022/04/07 Python