JavaScript 正则表达式中global模式的特性


Posted in Javascript onFebruary 25, 2016

返回 Boolean 值,指出正则表达式使用的global 标志 (g) 的状态。默认值为 false。只读。 rgExp.global 必选项 rgExp 参数是正则表达式对象。 如果正则表达式设置了global 标志,那么global 属性返回 true,否则返回 false。 使用 global 标志表明在被查找的字符串中搜索操作将查找所有符合的项,而不仅仅是第一个。这也被称为全局匹配。

一直不是很清楚javascript的global到底表现在哪些方面,所以今天特地做了几个测试:

var str = 'bbaaabb',
reg = /^b|b$/;

while(reg.test(str)){


str = str.replace(reg,'');


console.log(reg.lastIndex + ":" + str);

}

最终结果:

//0:baaabb
//0:aaabb
//0:aaab
//0:aaa

但是如果稍做一些修改

var str = 'bbaaabb',
reg = /^b|b$/g;

while(reg.test(str)){


str = str.replace(reg,'');


console.log(reg.lastIndex + ":" + str);

}

最终结果则是:

//0:baaab
//0:aaa

这样的结果说明,global模式下,在匹配到了开始的b字符后,还将继续匹配结尾的b字符,从而忽视掉中间"|"操作符。

JavaScript 正则表达式中global模式的特性就给大家介绍这么多,希望对大家有所帮助!

Javascript 相关文章推荐
由JavaScript技术实现的web小游戏(不含网游)
Jun 12 Javascript
JS target与currentTarget区别说明
Aug 28 Javascript
jQuery实现的多选框多级联动插件
May 02 Javascript
一个不错的字符串转码解码函数(自写)
Jul 31 Javascript
如何在node的express中使用socket.io
Dec 15 Javascript
jquery图片轮播特效代码分享
Apr 20 Javascript
如何用angularjs制作一个完整的表格
Jan 21 Javascript
bootstrap table复杂操作代码
Nov 01 Javascript
js图片加载效果实例代码(延迟加载+瀑布流加载)
May 12 Javascript
基于Bootstrap table组件实现多层表头的实例代码
Sep 07 Javascript
js中call()和apply()改变指针问题的讲解
Jan 17 Javascript
解决vue使用vant轮播组件swipe + flex时文字抖动问题
Jan 07 Vue.js
javascript动态获取登录时间和在线时长
Feb 25 #Javascript
基于javascript实现动态时钟效果
Aug 18 #Javascript
jQuery使用zTree插件实现树形菜单和异步加载
Feb 25 #Javascript
灵活的理解JavaScript中的this指向
Feb 25 #Javascript
jQuery插件实现表格隔行变色及鼠标滑过高亮显示效果代码
Feb 25 #Javascript
jQuery插件实现文字无缝向上滚动效果代码
Feb 25 #Javascript
jQuery zTree加载树形菜单功能
Feb 25 #Javascript
You might like
php采用curl访问域名返回405 method not allowed提示的解决方法
2014/06/26 PHP
实例讲解PHP面向对象之多态
2014/08/20 PHP
php array_walk_recursive 使用自定的函数处理数组中的每一个元素
2016/11/16 PHP
PHP无限极分类函数的实现方法详解
2017/04/15 PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
2017/12/26 PHP
基于PHP实现微信小程序客服消息功能
2019/08/12 PHP
php生成短网址/短链接原理和用法实例分析
2020/05/29 PHP
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
2007/03/06 Javascript
jquery 注意事项与常用语法小结
2010/06/07 Javascript
js实现拖拽效果
2015/02/12 Javascript
Vue项目中引入外部文件的方法(css、js、less)
2017/07/24 Javascript
基于百度地图api清除指定覆盖物(Overlay)的方法
2018/01/26 Javascript
微信小程序实现收货地址左滑删除
2020/11/18 Javascript
浅谈vue项目,访问路径#号的问题
2020/08/14 Javascript
JS页面动态绘图工具SVG,Canvas,VML介简介
2020/10/16 Javascript
[42:34]VP vs VG 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
python+matplotlib实现动态绘制图片实例代码(交互式绘图)
2018/01/20 Python
python3判断url链接是否为404的方法
2018/08/10 Python
Python查找最长不包含重复字符的子字符串算法示例
2019/02/13 Python
Python3几个常见问题的处理方法
2019/02/26 Python
Python3 使用pillow库生成随机验证码
2019/08/26 Python
python的命名规则知识点总结
2019/10/04 Python
Java爬虫技术框架之Heritrix框架详解
2020/07/22 Python
详解torch.Tensor的4种乘法
2020/09/03 Python
Scrapy中如何向Spider传入参数的方法实现
2020/09/28 Python
家长对小学生的评语
2014/01/28 职场文书
先进事迹演讲稿
2014/09/01 职场文书
2014年销售工作总结范文
2014/12/01 职场文书
班级元旦晚会开幕词
2015/01/29 职场文书
考博导师推荐信范文
2015/03/27 职场文书
整脏治乱工作简报
2015/07/21 职场文书
工伤事故赔偿协议书
2015/08/06 职场文书
趣味运动会标语口号
2015/12/26 职场文书
2016大学生暑期三下乡心得体会
2016/01/23 职场文书
施工安全协议书
2016/03/22 职场文书
Java 多线程协作作业之信号同步
2022/05/11 Java/Android