JS中正则表达式全局匹配模式 /g用法详解


Posted in Javascript onApril 01, 2017

本文章来详细介绍js中正则表达式的全局匹配模式 /g用法,代码如下:

var str = "123#abc"; 
var re = /abc/ig; 
console.log(re.test(str)); //输出ture 
console.log(re.test(str)); //输出false 
console.log(re.test(str)); //输出ture 
console.log(re.test(str)); //输出false

在创建正则表达式对象时如果使用了“g”标识符或者设置它了的global属性值为ture时,那么新创建的正则表达式对象将使用模式对要将要匹配的字符串进行全局匹配。在全局匹配模式下可以对指定要查找的字符串执行多次匹配。每次匹配使用当前正则对象的lastIndex属性的值作为在目标字符串中开始查找的起始位置。lastIndex属性的初始值为0,找到匹配的项后lastIndex的值被重置为匹配内容的下一个字符在字符串中的位置索引,用来标识下次执行匹配时开始查找的位置,如果找不到匹配的项lastIndex的值会被设置为0。当没有设置正则对象的全局匹配标志时lastIndex属性的值始终为0,每次执行匹配仅查找字符串中第一个匹配的项。可以通下面的代码来查看在执行匹配相应的lastIndex 属性的值,代码如下:

var str = "123#abc"; 
var re = /abc/ig; 
console.log(re.test(str)); //输出ture 
console.log(re.lastIndex); //输出7 
console.log(re.test(str)); //输出false 
console.log(re.lastIndex); //输出0 
console.log(re.test(str)); //输出ture 
console.log(re.lastIndex); //输出7 
console.log(re.test(str)); //输出false 
console.log(re.lastIndex); //输出0

以上所述是小编给大家介绍的JS中正则表达式全局匹配模式 /g用法详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
简单的无缝滚动程序-仅几行代码
May 08 Javascript
jQuery1.5.1 animate方法源码阅读
Apr 05 Javascript
js中的this关键字详解
Sep 25 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
Nov 12 Javascript
jQuery菜单插件用法实例
Jul 25 Javascript
JS制作图形验证码实现代码
Oct 19 Javascript
Vue.set()实现数据动态响应的方法
Feb 07 Javascript
基于JavaScript伪随机正态分布代码实例
Nov 07 Javascript
jQuery三组基本动画与自定义动画操作实例总结
May 09 jQuery
vue el-tree 默认展开第一个节点的实现代码
May 15 Javascript
vue之封装多个组件调用同一接口的案例
Aug 11 Javascript
JavaScript字符串转数字的简单实现方法
Nov 27 Javascript
Vue表单验证插件的制作过程
Apr 01 #Javascript
JS中使用正则表达式g模式和非g模式的区别
Apr 01 #Javascript
如何选择jQuery版本 1.x? 2.x? 3.x?
Apr 01 #jQuery
微信小程序网络请求的封装与填坑之路
Apr 01 #Javascript
微信小程序 列表的上拉加载和下拉刷新的实现
Apr 01 #Javascript
Node.js之网络通讯模块实现浅析
Apr 01 #Javascript
vue-cli+webpack记事本项目创建
Apr 01 #Javascript
You might like
php中怎么搜索相关联数组键值及获取之
2013/10/17 PHP
PHP+ajax分页实例简析
2015/12/07 PHP
php文档工具PHP Documentor安装与使用方法
2016/01/25 PHP
PHP PDOStatement::fetchAll讲解
2019/01/31 PHP
javascript 学习笔记(一)DOM基本操作
2011/04/08 Javascript
js 代码优化点滴记录
2012/02/19 Javascript
在浏览器窗口上添加遮罩层的方法
2012/11/12 Javascript
jQuery.buildFragment使用方法及思路分析
2013/01/07 Javascript
Jquery实现的tab效果可以指定默认显示第几页
2013/10/16 Javascript
js输入框邮箱自动提示功能代码实现
2013/12/10 Javascript
javaScript年份下拉列表框内容为当前年份及前后50年
2014/05/28 Javascript
jquery实现带缩略图的全屏图片画廊效果实例
2015/06/25 Javascript
JS/jQ实现免费获取手机验证码倒计时效果
2016/06/13 Javascript
基于jquery实现的鼠标悬停提示案例
2016/12/11 Javascript
微信小程序 传值取值的几种方法总结
2017/01/16 Javascript
vue实现添加标签demo示例代码
2017/01/21 Javascript
深入理解 JavaScript 中的 JSON
2017/04/06 Javascript
javascript中new Array()和var arr=[]用法区别
2017/12/01 Javascript
将jquery.qqFace.js表情转换成微信的字符码
2017/12/01 jQuery
vue实现提示保存后退出的方法
2018/03/15 Javascript
Bootstrap开发中Tab标签页切换图表显示问题的解决方法
2018/07/13 Javascript
vue + el-form 实现的多层循环表单验证
2020/11/25 Vue.js
python函数缺省值与引用学习笔记分享
2013/02/10 Python
使用scrapy实现爬网站例子和实现网络爬虫(蜘蛛)的步骤
2014/01/23 Python
python爬虫之验证码篇3-滑动验证码识别技术
2019/04/11 Python
Python列表对象实现原理详解
2019/07/01 Python
对Django url的几种使用方式详解
2019/08/06 Python
Python3爬虫中Splash的知识总结
2020/07/10 Python
Python爬虫爬取糗事百科段子实例分享
2020/07/31 Python
HTML5标签使用方法详解
2015/11/27 HTML / CSS
美国礼品卡交易网站:Cardpool
2018/08/27 全球购物
2014入党积极分子批评与自我批评思想报告
2014/10/06 职场文书
团员个人年度总结
2015/02/26 职场文书
Django实现在线无水印抖音视频下载(附源码及地址)
2021/05/06 Python
分析设计模式之模板方法Java实现
2021/06/23 Java/Android
Python docx库删除复制paragraph及行高设置图片插入示例
2022/07/23 Python