正则表达式全局匹配模式(g修饰符)

来源:脚本之家  责任编辑:小易  

正则表达式加上参数g之后,表明可以进行全局匹配。此外对于不同的对象方法,/g的含义有所不同,下面给出

正则表达式g修饰符:

全局模式的意思。第一个/表示正则表达式的开始最后一个/g是全局匹配模式。就是匹配在整个字符串

g修饰符用语规定正则表达式执行全局匹配,也就是在找到第一个匹配之后仍然会继续查找。

g的作用是匹配串中所有匹配的子串(如果没有,找到一个之后匹配就结束了)m的作用是让^和$匹配每一

语法结构:

do while 本来就是先执行后判断,所以多一次啊。 for和while都是先判断后执行。

构造函数方式:

js 的String对象有一个match方法,可以传递一个正则表达式,范围所有匹配的值,比如:v

new RegExp("regexp","g")

仅就网上流传的不到十秒的视频来看,老师的确打了学生,而且是先动手,这没有任何可洗的余地。国家赋予教师的有限惩戒权仅限于口头批评教育和行政处罚,侮辱、体罚和殴打是红线,踩着必自伤。如今事情闹得那么大,那位老师受到校内处分、取消本年度所有评优、晋升和奖励,是逃不掉的。此外,轻则系统内通报批评,重则暂时调离教师岗位,但不至于开除。而该教师所在的学校很可能会被取消本年度的文明单位、办学先进单位、德育先进单位的评比资格。至于还手的学生,无论之前做了什么,百分百不会有任何处理。这些年学生打老师的事情层出不穷,也没听说有听说哪个学生被开除。更遑论这回学生挨打在先,闹得好,不仅不会处理学生,还能收获一堆道歉、

对象直接量方式:

最近,某宝上又掀起了一阵黄色卫生纸的热潮,这种颜色泛黄的卫生纸让人联想起古代人们如厕使用的草纸,以其原色、无添加剂的优势获得了人们的青睐。那么,现在我们使用的洁白、柔软的卫生纸有什么不好呢?在制作这种卫生纸的时候,为了看起来干净,工厂不仅要添加漂白剂,还要添加可以致癌的荧光剂,为了不堵塞马桶,还会添加柔韧剂等化学品,如果直接接触口鼻、私处,都不是很安全。黄色的卫生纸都是安全的纸吗?答案也不尽然,许多商家听说了人们的新癖好,纷纷白色卫生纸染成了黄色,顾客喜欢什么颜色,他们就染什么颜色,并纷纷打出纯天然的旗号,这样的纸虽然买的放心,但用着却不安心。真正复古的黄色卫生纸,是由稻草、秸秆、芦苇、杂草等

/regexp/g

童年倒是没阴影,就是前几天一个梦把我吓的够呛,我梦见自己被好几条大狗咬,双手和双腿都被狗撕扯着,甚至都腾空了,怎么都挣不脱,而且还怎么都醒不来,特别真实,幸亏到最后我妈把我叫起来了。我以前特别喜欢小动物,什么小猫小狗小兔子啊,但是这个梦以后看见狗心里就有一种控制不住的恐惧感。

浏览器支持:

【点击右上角的橙色按钮,关注“爱农帮”】开车路上遇到婚车或者丧礼怎么办?很多人可能就当做什么也没看见,径直就开走了,其实这里面有很多学问的,并不是小编迷信或者封建,而是出于礼貌,我们也应该这样做,不然有时候给自己惹到什么麻烦,那就得不偿失了!一、遇到婚车、结婚1、遇到婚车如果是开车刚好于婚车走碰头,老司机说这是最不吉利的,我们可以绕道一下,如果跟随婚车那就大吉大利了,如果不是刻意为之的与婚车同事到达目的地,那更是鸿运当头发财路挡都挡不住!2、头婚车如果你的车足够好,可能朋友们都会借你的车做主婚车,婚车上用来装饰的鲜花、彩带等物,在婚礼之后入库之前要摘下来,禁忌带回家中。3、遇到婚礼燃放鞭炮开车

IE浏览器支持此元字符。

火狐浏览器支持此元字符。

谷歌浏览器支持此元字符。

实例代码:

实例一:

var str="this is an antzone good"; var reg=/an/; console.log(str.match(reg));

以上代码只能够匹配第一个"an",因为并没有进行全局匹配,在第一个匹配成功之后,就不再继续匹配了。

实例二:

var str="this is an antzone good"; var reg=/an/g; console.log(str.match(reg));

以上代码能够匹配到两个"an"。

下面是补充

本文章来详细介绍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

扩展阅读,根据您访问的内容系统为您准备了以下内容,希望对您有帮助。

正则表达式(/<img[^>]*?(src="[^"]*?")[^>]*?>/g这一句话怎么解释啊?

(1)/正则表达式内容/  这里的/是正则分隔符,不同语言有不同的定义,js里只能用/,

如果正则表达式内容本身需要用到/,则需要转义,如:/<\/div>/

(2)/g 这里的g是模式修饰符,表示全局匹配,也就是正则表达式内容能匹配多次的情况下,

会得到多个匹配结果。

常用的模式修饰符有:

i  不区分大小写

m  多行模式,^匹配行开头,$匹配行结尾

s  单行模式,.能匹配所有字符,^匹配整个文本开头,$匹配整个文本结尾

模式修饰符在不冲突的情况下可以同时使用,如 /img/gi 表示全局匹配不区分大小写的img

(3)[^>]*?  非贪婪匹配不是>的内容,就是尽可能少地匹配不是>的字符。

(4)$1  这是在替换里引用第一个分组的内容的意思,也就是正则表达式里第一个捕获组,

即第一个括号的内容。

更多正则内容请参考我的博客《我眼里的正则表达式入门教程》

【写了这么多才发现这个问题竟然采纳了...无所谓啦~答案留下了,希望对你们有帮助】来自:求助得到的回答

JS正则表达式exec()方法和修饰符g的作用

因为你这里相当于把正则表达式运行了三次,reg.test 虽然返回值是true,但它实际上的测试结果为a,然后reg.exec返回的是b,最后的reg.exec则返回c

你运行一下下面的代码就清楚了:

var str="abc";

var reg=/[a-z]/g;

console.log(reg.exec(str));

console.log(reg.exec(str));

console.log(reg.exec(str));更多追问追答追答

我上面不是已经说了嘛,它这是依次测试str中的每个字符,str的第一个字符是a,在[a-c]的范围内,所以是true。你连续执行4次,第四次的字符是d,不在范围内,这时候就是false了:

console.log(reg.test(str));  //true

console.log(reg.test(str));  //true

console.log(reg.test(str));  //true

console.log(reg.test(str));  //false追问懂了,谢谢,另外一个问题:

var str = "abcdef";

var reg = /[a-c]/;

console.log(reg.test(str));

结果是true.这是为什么?我的理解是,abcdef这个字符串里面的字符已经超过了[a-c]的范围啊,结果应该是false.它匹配的时候应该是先从a开始匹配,然后再匹配b以此类推,如果这样的话结果应该是false.不知道为什么?了解了,万分感谢!

谁能帮我解答一下,php中正则表达式的全局修饰符、g起什么作用,最好用一个小实例来证明一下!

替换的时候,如果没有g,只替换第一个匹配项,有的话替换所有匹配项。

什么是PHP正则表达式模式修饰符

?  非贪婪模式'aaaaa'.match(/a+/) // 'aaaaa'   默认贪婪模式,a符合要求,aa也不和要求,就会一直向后匹配知道不符合要求,返回最后一个符合要求的匹配值

'aaaaa'.match(/a+?/) // 'a'  非贪婪模式,一旦符合要求,就不再追加

i       /xxx/i   忽略大小写, 不带i的大小写敏感

比如/a/.test('A') // false

/a/i.test('A') // true

g      /xxx/g  全局匹配,不带g的只会匹配一次,g会一直向后匹配。可以和i同时使用

比如 'ababa'.replace(/a/, '1')  // 1baba

 'ababa'.replace(/a/g, '1')  // 1b1b1

正则表达式 修饰符 g

替换的时候,如果没有g,只替换第一个匹配项,有的话替换所有匹配项。

是否可以解决您的问题?

  • 本文相关:
  • python使用中文正则表达式匹配指定中文字符串的方法示例
  • ios 正则表达式判断纯数字及匹配11位手机号码的方法
  • go语言正则表达式用法实例小结【查找、匹配、替换等】
  • 正则表达式教程之重复匹配详解
  • 正则表达式匹配ip的表达式(推荐)
  • 正则表达式m修饰符(多行匹配)
  • java使用正则表达式(regex)匹配中文实例代码
  • 正则表达式匹配(url、电话、手机、邮箱)的实例代码
  • 用正则取出html页面中script段落里的内容
  • 正则表达式模式匹配字符串基础知识
  • js正则表达式 匹配两个特定字符间的内容示例
  • 正则表达式详述 四
  • 正则表达式教程之元字符的使用详解
  • 最常用的15个前端表单验证js正则表达式
  • php 正则表达式 推荐
  • 正则表达式grep用法详解
  • javascript中基于replace函数的正则表达式语法
  • 匹配中文的正则(gb2312/utf-8)
  • 正则表达式(/<img[^>]*?(src="[^"]*?"...
  • JS正则表达式exec()方法和修饰符g的作用
  • 谁能帮我解答一下,php中正则表达式的全局修饰符、g起什么作用,最好用一个小实例来证明一下!
  • 什么是PHP正则表达式模式修饰符
  • 正则表达式 修饰符 g
  • 正则表达式(/[^0-9]/g,'')中的"/g"是什么意思 ?...
  • 正则表达式/g什么意思
  • 正则表达式中g(全局搜索)和m(多行搜索)有什么区别
  • 正则表达式全局匹配下,多种写法区别
  • js正则表达式match全局匹配结果为什么不全?
  • 免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved