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 纠正 cleanWhitespace函数
Mar 11 Javascript
基于Jquery 解决Ajax请求的页面 浏览器后退前进功能,页面刷新功能实效问题
Dec 11 Javascript
js创建数据共享接口——简化框架之间相互传值
Oct 23 Javascript
jquery 无限级联菜单案例分享
Mar 26 Javascript
用RadioButten或CheckBox实现div的显示与隐藏
Sep 21 Javascript
JS 实现导航栏悬停效果(续2)
Sep 24 Javascript
给文字加上着重号的JS代码
Nov 12 Javascript
document.getElementById获取控件对象为空的解决方法
Nov 20 Javascript
完美解决IE9浏览器出现的对象未定义问题
Sep 29 Javascript
seajs下require书写约定实例分析
May 16 Javascript
小试SVG之新手小白入门教程
Jan 08 Javascript
JS前端模块化原理与实现方法详解
Mar 17 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中flush()、ob_flush()、ob_end_flush()的区别介绍
2013/02/17 PHP
PHP同时连接多个mysql数据库示例代码
2014/03/17 PHP
Laravel 中使用 Vue.js 实现基于 Ajax 的表单提交错误验证操作
2017/06/30 PHP
PHP生成随机数的方法总结
2018/03/01 PHP
JavaScript 模拟用户单击事件
2009/12/31 Javascript
jquery 新浪网易的评论块制作
2010/07/01 Javascript
ajax中get和post的说明及使用与区别
2012/12/23 Javascript
设置checkbox为只读(readOnly)的两种方式
2013/10/11 Javascript
JavaScript二维数组实现的省市联动菜单
2014/05/08 Javascript
javascript常见用法总结
2014/05/22 Javascript
js动态添加onclick事件可传参数与不传参数
2014/07/29 Javascript
javascript 闭包详解
2015/02/15 Javascript
整理JavaScript创建对象的八种方法
2015/11/03 Javascript
jQuery实现点击任意位置弹出层外关闭弹出层效果
2016/10/19 Javascript
基于easyui checkbox 的一些操作处理方法
2017/07/10 Javascript
如何将 jQuery 从你的 Bootstrap 项目中移除(取而代之使用Vue.js)
2017/07/17 jQuery
通过一个简单的例子学会vuex与模块化
2017/11/22 Javascript
webpack3里使用uglifyjs压缩js时打包报错的解决
2018/12/13 Javascript
微信小程序实现文字从右向左无限滚动
2020/11/18 Javascript
wxPython定时器wx.Timer简单应用实例
2015/06/03 Python
python多进程和多线程究竟谁更快(详解)
2017/05/29 Python
Python中的defaultdict与__missing__()使用介绍
2018/02/03 Python
python 中文件输入输出及os模块对文件系统的操作方法
2018/08/27 Python
Python产生Gnuplot绘图数据的方法
2018/11/09 Python
Python3 tkinter 实现文件读取及保存功能
2019/09/12 Python
python opencv进行图像拼接
2020/03/27 Python
浅析python 动态库m.so.1.0错误问题
2020/05/09 Python
css3 响应式媒体查询的示例代码
2019/09/25 HTML / CSS
adidas官方旗舰店:德国运动用品制造商
2017/11/25 全球购物
创意爱尔兰礼物:Creative Irish Gifts
2020/01/29 全球购物
The North Face官方旗舰店:美国著名户外品牌
2020/09/28 全球购物
简历中自我评价分享
2013/10/09 职场文书
英语专业学生个人求职信范文
2014/01/06 职场文书
初中英语教学反思
2014/01/25 职场文书
食品安全汇报材料
2014/08/18 职场文书
Python使用UDP实现720p视频传输的操作
2021/04/24 Python