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 相关文章推荐
JS类的封装及实现代码
Dec 02 Javascript
javascript中数组中求最大值示例代码
Dec 18 Javascript
使用Node.js为其他程序编写扩展的基本方法
Jun 23 Javascript
JavaScript中setTimeout和setInterval函数的传参及调用
Mar 11 Javascript
jQuery实现滚动条滚动到子元素位置(方便定位)
Jan 08 Javascript
tab栏切换原理
Mar 22 Javascript
vue-cli 3.x 配置Axios(proxyTable)跨域代理方法
Sep 19 Javascript
vue基础之事件v-onclick="函数"用法示例
Mar 11 Javascript
微信小程序实现左滑动删除效果
Mar 30 Javascript
微信小程序 授权登录详解(附完整源码)
Aug 23 Javascript
微信小程序实现侧边栏分类
Oct 21 Javascript
javascript实现拖拽碰撞检测
Mar 12 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
Smarty安装配置方法
2008/04/10 PHP
php导出excel格式数据问题
2014/03/11 PHP
使用配置类定义Codeigniter全局变量
2014/06/12 PHP
Yii2框架实现注册和登录教程
2016/09/30 PHP
php设计模式之建造器模式分析【星际争霸游戏案例】
2020/01/23 PHP
用JavaScript对JSON进行模式匹配(Part 1-设计)
2010/07/17 Javascript
加随机数引入脚本不让浏览器读取缓存
2014/09/04 Javascript
动态加载jQuery的方法
2015/06/16 Javascript
js实现新年倒计时效果
2015/12/10 Javascript
jQuery的promise与deferred对象在异步回调中的作用
2016/05/03 Javascript
MUI  Scroll插件的使用详解
2017/04/13 Javascript
JS鼠标3次点击事件实现代码及扩展思路
2017/09/12 Javascript
vue中父子组件注意事项,传值及slot应用技巧
2018/05/09 Javascript
vue中axios的二次封装实例讲解
2019/10/14 Javascript
React Hooks 实现和由来以及解决的问题详解
2020/01/17 Javascript
解决Vue watch里调用方法的坑
2020/11/07 Javascript
python自动查询12306余票并发送邮箱提醒脚本
2018/05/21 Python
python开发准备工作之配置虚拟环境(非常重要)
2019/02/11 Python
Python3 A*寻路算法实现方式
2019/12/24 Python
Python 多线程C段扫描、检测 Ping扫描脚本的实现
2020/09/03 Python
python自动从arxiv下载paper的示例代码
2020/12/05 Python
香港万宁官方海外旗舰店:香港健与美连锁店
2018/09/27 全球购物
联想智利官方网站:Lenovo Chile
2020/06/03 全球购物
施工资料员岗位职责
2014/01/06 职场文书
《藏戏》教学反思
2014/02/11 职场文书
消防安全员岗位职责
2014/03/10 职场文书
遗体告别仪式主持词
2014/03/20 职场文书
文明城市创建标语
2014/06/16 职场文书
运动会演讲稿300字
2014/08/25 职场文书
司机工作自我鉴定
2014/09/19 职场文书
单位租房协议范本
2014/12/03 职场文书
资金申请报告范文
2015/05/14 职场文书
2015新员工工作总结范文
2015/10/15 职场文书
2016大学生社会实践单位评语
2015/12/01 职场文书
党员干部学习三严三实心得体会
2016/01/05 职场文书
2019最新婚庆对联集锦!
2019/07/10 职场文书