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 相关文章推荐
CheckBoxList多选样式jquery、C#获取选择项
Sep 06 Javascript
jQuery插件slick实现响应式移动端幻灯片图片切换特效
Apr 12 Javascript
javascript中的正则表达式使用详解
Aug 30 Javascript
JavaScript如何调试有哪些建议和技巧附五款有用的调试工具
Oct 28 Javascript
Bootstrap实现带动画过渡的弹出框
Aug 09 Javascript
详解如何创建并发布一个 vue 组件
Nov 08 Javascript
微信小程序HTTP接口请求封装的实现
Feb 21 Javascript
详解vue中的父子传值双向绑定及数据更新问题
Jun 13 Javascript
使用VScode 插件debugger for chrome 调试react源码的方法
Sep 13 Javascript
vue中使用[provide/inject]实现页面reload的方法
Sep 30 Javascript
JavaScript设计模式---单例模式详解【四种基本形式】
May 16 Javascript
如何使用Javascript中的this关键字
May 28 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
PHP 一个随机字符串生成代码
2010/05/26 PHP
phpstudy默认不支持64位php的解决方法
2017/02/20 PHP
PHP面向对象类型约束用法分析
2019/06/12 PHP
thinkPHP+mysql+ajax实现的仿百度一下即时搜索效果详解
2019/07/15 PHP
Laravel修改验证提示信息为中文的示例
2019/10/23 PHP
Js之软键盘实现(js源码)
2007/01/30 Javascript
JavaScript 获取当前时间戳的代码
2010/08/05 Javascript
基于jquery实现的表格分页实现代码
2011/06/21 Javascript
jQuery+ajax实现无刷新级联菜单示例
2015/05/21 Javascript
JS+CSS实现下拉列表框美化效果(3款)
2015/08/15 Javascript
jQuery拖拽排序插件制作拖拽排序效果(附源码下载)
2016/02/23 Javascript
JS表格组件BootstrapTable行内编辑解决方案x-editable
2016/09/01 Javascript
Vue.js每天必学之过滤器与自定义过滤器
2016/09/07 Javascript
jQuery Validate让普通按钮触发表单验证的方法
2016/12/15 Javascript
JS中如何实现复选框全选功能
2016/12/19 Javascript
node.js用fs.rename强制重命名或移动文件夹的方法
2017/12/27 Javascript
解决vue中虚拟dom,无法实时更新的问题
2018/09/15 Javascript
js form表单input框限制20个字符,10个汉字代码实例
2019/04/12 Javascript
JavaScript数组去重实现方法小结
2020/01/17 Javascript
[49:35]LGD vs OG 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
Python 出现错误TypeError: ‘NoneType’ object is not iterable解决办法
2017/01/12 Python
Python实现多线程HTTP下载器示例
2017/02/11 Python
使用Python写CUDA程序的方法
2017/03/27 Python
python3.4用循环往mysql5.7中写数据并输出的实现方法
2017/06/20 Python
Python+树莓派+YOLO打造一款人工智能照相机
2018/01/02 Python
python opencv检测目标颜色的实例讲解
2018/04/02 Python
使用python PIL库实现简单验证码的去噪方法步骤
2019/05/10 Python
英国领先的新鲜松露和最好的松露产品供应商:TruffleHunter
2019/08/26 全球购物
JPA面试常见问题
2016/11/14 面试题
金士达面试非笔试
2012/03/14 面试题
中专毕业个人的自荐信格式
2013/09/21 职场文书
服装公司总经理岗位职责
2013/11/30 职场文书
制衣厂各岗位职责
2013/12/02 职场文书
违规违纪检讨书范文
2015/05/06 职场文书
看看如何用Python绘制小米新版天价logo
2021/04/20 Python
springboot用户数据修改的详细实现
2022/04/06 Java/Android