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 相关文章推荐
基于jQuery的消息提示插件之旅 DivAlert(三)
Apr 01 Javascript
突发奇想的一个jquery插件
Nov 19 Javascript
javascript算法学习(直接插入排序)
Apr 12 Javascript
vue.js 表格分页ajax 异步加载数据
Oct 18 Javascript
用jQuery旋转插件jqueryrotate制作转盘抽奖
Feb 10 Javascript
vue如何使用 Slot 分发内容实例详解
Sep 05 Javascript
vue将时间戳转换成自定义时间格式的方法
Mar 02 Javascript
详解Vue CLI3配置之filenameHashing使用和源码设计使用和源码设计
Aug 31 Javascript
关于React动态加载路由处理的相关问题
Jan 07 Javascript
JQuery获取元素尺寸、位置及页面滚动事件应用示例
May 14 jQuery
js获取对象,数组所有属性键值(key)和对应值(value)的方法示例
Jun 19 Javascript
超详细小程序定位地图模块全系列开发教学
Nov 24 Javascript
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实现框架(一)
2006/10/09 PHP
Gambit vs CL BO3 第一场 2.13
2021/03/10 DOTA
Nigma vs Liquid BO3 第一场2.13
2021/03/10 DOTA
利用404错误页面实现UrlRewrite的实现代码
2008/08/20 Javascript
23个Javascript弹出窗口特效整理
2011/02/25 Javascript
JQEasy-ui在IE9以下版本中二次加载的问题分析及处理方法
2014/06/23 Javascript
JavaScript运行机制之事件循环(Event Loop)详解
2014/10/10 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
2016/02/18 Javascript
jquery 属性选择器(匹配具有指定属性的元素)
2016/09/06 Javascript
Vue一个案例引发的递归组件的使用详解
2018/11/15 Javascript
简单学习5种处理Vue.js异常的方法
2019/06/17 Javascript
js 递归json树实现根据子id查父id的方法分析
2019/11/08 Javascript
ES2020 已定稿,真实场景案例分析
2020/05/25 Javascript
vue 避免变量赋值后双向绑定的操作
2020/11/07 Javascript
[36:22]VP vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python模仿网页版微信发送消息功能
2018/02/24 Python
Tensorflow 同时载入多个模型的实例讲解
2018/07/27 Python
详解Python3中的迭代器和生成器及其区别
2018/10/09 Python
Python实现多属性排序的方法
2018/12/05 Python
详解用python实现基本的学生管理系统(文件存储版)(python3)
2019/04/25 Python
python使用Qt界面以及逻辑实现方法
2019/07/10 Python
Python实现网页截图(PyQT5)过程解析
2019/08/12 Python
wxPython:python首选的GUI库实例分享
2019/10/05 Python
Max&Co官网:意大利年轻女性时尚品牌
2017/05/16 全球购物
美国男士西装打折店:Jos. A. Bank
2017/11/13 全球购物
教师评优的个人自我评价分享
2013/09/19 职场文书
毕业生机械建模求职信
2013/10/14 职场文书
旷课检讨书1000字
2014/02/14 职场文书
网站美工岗位职责
2014/04/02 职场文书
2014年九一八事变演讲稿
2014/09/14 职场文书
党的群众路线教育实践活动学习笔记
2014/11/05 职场文书
浅谈Python基础之列表那些事儿
2021/05/11 Python
使用CSS3实现按钮悬停闪烁动态特效代码
2021/08/30 HTML / CSS
Redis高可用集群redis-cluster详解
2022/03/20 Redis
mysql insert 存在即不插入语法说明
2022/03/25 MySQL
Java中Dijkstra(迪杰斯特拉)算法
2022/05/20 Java/Android