技术文章
当前位置:首页 > Javascript技术文章 > JS中正则表达式全局匹配模式 /g用法详解

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

  • 发布时间:
  • 作者:码农之家原创
  • 点击:157

这篇文章主要知识点是关于js正则表达式全局匹配、正则表达式全局匹配、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

完美图解物联网IoT实操:ESP8266 Arduino,Cordova物联网移动App,JavaScript微控制器编程
  • 类型:物联网大小:60.8 MB格式:PDF出版:电子工业出版社作者:赵英杰
立即下载

更多Javascript相关的学习资源可以参阅 Javascript电子书程序设计电子书 等栏目。

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

本文章来详细介绍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的全部知识点内容总结,大家还可以在下方相关文章里找到js实现方块上下左右移动效、 javascript的写法总结、 webpack 2的react开发配置详解、 等javascript文章进一步学习,感谢大家的阅读和支持。

上一篇:webpack 2的react开发配置详解

下一篇:JS实现两个select下拉框选项左右移动的实例代码

展开 +

收起 -

相关电子书
学习笔记
网友NO.678832

JS正则替换去空格的方法

本文实例讲述了JS正则替换去空格的方法。分享给大家供大家参考,具体如下: 在网上找了好久,发现没几个是好用的。自己备份一个省得以后再找。 //去左空格;function ltrim(s){ return s.replace( /^/s*/, "");}//去右空格;function rtrim(s){ return s.replace( //s*$/, "");}//左右空格;function trim(s){ return rtrim(ltrim(s));} 如果是去掉半角和全角空格就把 /s 替换成 [" "|" "] 就变成 //去左空格;function ltrim(s){ return s.replace( /^[" "|" "]*/, "");}//去右空格;function rtrim(s){ return s.replace( /[" "|" "]*$/, "");}//左右空格;function trim(s){ return rtrim(ltrim(s));} PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用: JavaScript正则表达式在线测试工具: http://tools.jb51.net/regex/javascript 正则表达式在线生成工具: http://tools.jb51.net/regex/create_reg 更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《……

网友NO.315991

JS中使用正则表达式g模式和非g模式的区别

先给大家说下js正则表达式中的g到底是什么意思 g是global的缩写啊! 就是匹配全部可匹配结果, 如果你不带g,在正则过程中,字符串是从左至右匹配的,如果匹配成功就不再继续向右匹配了,如果你带g,它会重头到尾的把正确匹配的字符串挑选出来 例如: var str = 'aaaaaaaa'var reg1 = /a/var reg2 = /a/gstr.match(reg1) // 结果为:["a", index: 0, input: "aaaaaaaa"]str.match(reg2) // 结果为:["a", "a", "a", "a", "a", "a", "a", "a"] js正则表达式g模式与非g模式的区别,具体代码如下所示: !DOCTYPE html html head lang="en" meta charset="UTF-8" titlemischen/title script //js中使用正则表达式 function test(){ //生成正则表达式对象; // 在g模式下,正则表达式对象的exec和test方法,依赖 正则表达式对象的lastIndex属性,而lastIndex会根据我们exec // 和test的执行 发生偏移 如果没有相应匹配 lastIndex 重归0 //在非g模式下,正……

网友NO.727190

JS正则表达式完美实现身份证校验功能

注意: 1、只针对18为身份证号码进行校验,现在15位的应该很少了, 2、不区分xX大小写, 3、出生年份1900-2099,每月的天数也进行相关验证(考虑的闰月的情况), 4、校验规则详见,这个写的比较详细和清楚,相信看过后都可以自己写一个, https://jingyan.baidu.com/article/7f41ececff944a593d095c8c.html 5、目前还无法对区位码就进行精确校验,本人搜集整理了区位码,提供了一个查询api,仅攻参考。 有不精确的地方可以留言指出 api地址:http://www.xuzee.com/api/idcard.php 接口说明:http://www.xuzee.com/api/ 6、这个验证函数目前在项目中实际运行,暂未发现问题,有问题会进行更新。 以上 直接上代码: function testid(id) { // 1 "验证通过!", 0 //校验不通过 // id为身份证号码 var format = /^(([1][1-5])|([2][1-3])|([3][1-7])|([4][1-6])|([5][0-4])|([6][1-5])|([7][1])|([8][1-2]))\d{4}(([1][9]\d{2})|([2]\d{3}))(([0][1-……

网友NO.349546

JS中关于正则的巧妙操作

废话不多说了,直接给大家贴代码了,具体代码如下所示: var msg="dsada[emoji:37]dsadas[emoji:3900]法拉綏芬河";function fetch(msg) { var match, result = msg, reg = /\[emoji:\d+\]/g, emojiIndex, totalEmojiNum = 45; while (match = reg.exec(msg)) { console.log(match[0]);//[emoji:37],[emoji:3900] emojiIndex = match[0].slice(7, -1); console.log(emojiIndex);//37,3900 if (emojiIndex totalEmojiNum) { result = result.replace(match[0], '[X]'); } else { result = result.replace(match[0], 'img src="images/eomji_' + emojiIndex + '.gif" /'); }; }; return result;//"dsadaimg src="images/eomji_37.gif" /dsadas[X]法拉綏芬河"}fetch(msg); 总结 以上所述是小编给大家介绍的JS中关于正则的巧妙操作,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对码农之家网站的支持! ……

<
1
>

Copyright 2018-2020 xz577.com 码农之家

电子书资源由网友、会员提供上传,本站记录提供者的基本信息及资源来路

鸣谢: “ 码小辫 ” 公众号提供回调API服务、“ 脚本CDN ”提供网站加速(本站寻求更多赞助支持)

版权投诉 / 书籍推广 / 赞助:520161757@qq.com

上传资源(网友、会员均可提供)

查看最新会员资料及资源信息