表达式加上参数g之后,表明可以进行全局匹配,注意这里“可以”的含义。我们详细叙述:

1)对于表达式对象的exec方法,不加入g,则只返回第一个匹配,无论执行多少次均是如此,如果加入g,则第一次执行也返回第一个匹配,再执行返回第二个匹配,依次类推。例如
var regx=/user/d/;
var str=“user18dsdfuser2dsfsd”;
var rs=regx.exec(str);//此时rs的值为{user1}
var rs2=regx.exec(str);//此时rs的值依然为{user1}
如果regx=/user/d/g;则rs的值为{user1},rs2的值为{user2}
通过这个例子说明:对于exec方法,表达式加入了g,并不是说执行exec方法就可以返回所有的匹配,而是说加入了g之后,我可以通过某种方式得到所有的匹配,这里的“方式”对于exec而言,就是依次执行这个方法即可。

2)对于表达式对象的test方法,加入g于不加上g没有什么区别。

3)对于String对象的match方法,不加入g,也只是返回第一个匹配,一直执行match方法也总是返回第一个匹配,加入g,则一次返回所有的匹配(注意这与表达式对象的exec方法不同,对于exec而言,表达式即使加上了g,也不会一次返回所有的匹配)。例如:
var regx=/user/d/;
var str=“user1sdfsffuser2dfsdf”;
var rs=str.match(regx);//此时rs的值为{user1}
var rs2=str.match(regx);//此时rs的值依然为{user1}
如果regx=/user/d/g,则rs的值为{user1,user2},rs2的值也为{user1,user2}

4)对于String对象的replace方法,表达式不加入g,则只替换第一个匹配,如果加入g,则替换所有匹配。(开头的三道测试题能很好的说明这一点)

5)对于String对象的split方法,加上g与不加g是一样的,即:
var sep=/user/d/;
var array=“user1dfsfuser2dfsf”.split(sep);
则array的值为{dfsf, dfsf}
此时sep=/user/d/g,返回值是一样的。

6)对于String对象的search方法,加不加g也是一样的。

正则表达式中/g的用法相关推荐

  1. Js 正则表达式中g的用法

    参数g的用法: 表达式加上参数g之后,表明可以进行全局匹配,注意这里"可以"的含义. 我们详细叙述: 对于表达式对象的exec方法,不加入g,则只返回第一个匹配,无论执行多少次均是 ...

  2. js/javascript正则表达式中/g /i /m的用法,以及实例

    正则的思想都是一样的,但是具体的写法会有所不同,在这里提到的/g,/i,/m在其他的地方也许就不能用了. 一,js正则标志/g,/i,/m说明 1,/g 表示该表达式将用来在输入字符串中查找所有可能的 ...

  3. 正则表达式中/g /i /m /e /x /s的用法

    这些符号被称为正则表达式模式修饰符,用法含义如下: 1./g 表示该表达式将用来在输入字符串中查找所有可能的匹配,返回的结果可以是多个.如果不加/g最多只会匹配一个 2./i 表示匹配的时候不区分大小 ...

  4. 正则表达式中?的用法

    正则表达式-问号的四种用法 原文符号 因为?在正则表达式中有特殊的含义,所以如果想匹配?本身,则需要转义,\? 有无量词 问号可以表示重复前面内容的0次或一次,也就是要么不出现,要么出现一次. 非贪婪 ...

  5. 关于正则表达式 g,m 参数的总结,为了回答“正则表达式(/[^0-9]/g,'')中的/g是什么意思?”...

    为了解答"正则表达式(/[^0-9]/g,'')中的"/g"是什么意思?"这个问题,也为了能够便于大家对正则表达式有一个更为综合和深刻的认识,我将一些关键点和容 ...

  6. 正则表达式中grep,sed的用法(包括基本的正则表达式和扩展的正则表达式)

    一 正则表达式   Basic REGEXP:基本正则表达式 Extended REGEXP:扩展正则表达式 (正则表达式是使得计算机变成智能化的重要途径) 1.1 基本正则表达式 . : 表示匹配任 ...

  7. [转]关于正则表达式 g,m 参数的总结,为了回答“正则表达式(/[^0-9]/g,'')中的/g是什么意思?”...

    为了解答"正则表达式(/[^0-9]/g,'')中的"/g"是什么意思?"这个问题,也为了能够便于大家对正则表达式有一个更为综合和深刻的认识,我将一些关键点和容 ...

  8. 正则表达式中^的用法

    用法一:   限定开头 文档上给出了解释是匹配输入的开始,如果多行标示被设置成了true,同时会匹配后面紧跟的字符.    比如 /^A/会匹配"An e"中的A,但是不会匹配&q ...

  9. 正则表达式中模式修正符作用详解(i、g、m、s、x、e)

    正则表达式中常用的模式修正符有i.g.m.s.x.e等.它们之间可以组合搭配使用. 它们的作用如下: //修正符:i 不区分大小写的匹配; //如:"/abc/i"可以与abc或a ...

最新文章

  1. Java程序执行Linux命令调用EasyPR程序识别车牌号
  2. Silverlight 导入数据时读取txt文件乱码
  3. sitecore系统教程之架构概述
  4. Cygwin Application initialization failed: no display name and no $DISPLAY environment
  5. Alpha冲刺(2/10)——2019.4.24
  6. idea jdbc封装_真赞!IDEA 中这么玩 MyBatis,让编码速度飞起!
  7. 科大讯飞交通超脑荣获 2019 年大数据应用最佳实践案例 TOP10
  8. 数据结构上机实验:单链表操作
  9. 【转载】Android 工具-adb原理
  10. 转载:找到免费中文电子书的几个网站
  11. Linux 重启命令
  12. python中options类_python命令行参数解析OptionParser类用法实例
  13. SpringBoot+MybatisPlus实现关联表查询
  14. JavaScript最详细基础语法总结(跳坑记录!)
  15. 笔记:修改host文件
  16. 屏蔽CSDN广告插件 - Chrome
  17. AE开发之主窗体通过Base Comand和IHookHelper接口向子窗体转递图层信息方法模板
  18. 阿里云服务器购买步骤
  19. 线程池监控和动态配置
  20. 中 华 百 家 姓 一 览

热门文章

  1. 【MATLAB教程案例50】通过VisualSFM工具箱提取360度等间隔环绕拍摄得到的图像序列点云数据,并进行目标三维重建matlab仿真
  2. seaborn保存图片
  3. 怎么用python下载视频_使用Python从直接URL下载视频
  4. HTML学习笔记_常用标签的使用及注意事项
  5. 搜狗输入法自动打开问题
  6. 什么是GPU云服务器,有哪些优势,适用于什么场景?
  7. linux 强制类型转换,转载 指针强制类型转换
  8. DataGridview单击某个单元格选中一行
  9. js实现音频可视化波形图
  10. 教你快速将多个TXT文档合并成一个多方法 手工方法无需软件