var pattern=/[a-z]+/;    //这里使用了贪婪模式,
var str='abcdefg';
alert(str.replace(pattern,'1')); //所有的字符串变成了1 var pattern=/[a-z]+?/; //这里使用了惰性模式,
var str='abcdefg';
alert(str.replace(pattern,'1')); //只有第一个字符变成了1,后面没有匹配 var pattern=/[a-z]+?/; //开启全局,并且使用惰性模式,
var str='abcdefg';
alert(str.replace(pattern,'1')); //每一个字母替换成了1 var pattern=/6(.*)6/; //使用了贪婪模式,
var str='6google6 6google6 6google6'; //匹配到了google6 6google6 6google
document.write(str.replace(pattern,'<strong>$1<strong>')); //结果:<strong>google6 6google6 6google<strong> var pattern=/6(.*?)6/; //使用了惰性模式,
var str='6google6 6google6 6google6';
document.write(str.replace(pattern,'<strong>$1<strong>')); //结果:<strong>google<strong> 6google6 6google6 var pattern=/6(.*?)6/g; //使用了惰性模式,开启全局
var str='6google6 6google6 6google6';
document.write(str.replace(pattern,'<strong>$1<strong>'));
//结果:<strong>google<strong> <strong>google<strong> <strong>google<strong>
//结果正确 var pattern=/6([^6]*)6/g; //另一种惰性,屏蔽了6的匹配,也就是两边的包含字符
var str='6google6 6google6 6google6';
document.write(str.replace(pattern,'<strong>$1<strong>'));

JavaScript正则表达式模式匹配(3)——贪婪模式和惰性模式的更多相关文章

  1. JavaScript正则表达式模式匹配(5)——特殊字符匹配、换行模式

    特殊字符匹配 var pattern=/\[/; // 用\符号来转义正则里的特殊字符才能匹配 var str='['; alert(pattern.test(str)); 换行模式 var patt ...

  2. JavaScript正则表达式模式匹配(6)——常用的正则表达式

    1.检查邮政编码 var pattern=/[1-9][0-9]{5}/; // 必须是6位,必须是数字,第一位不能为0 var str='274200'; alert(pattern.test(st ...

  3. JavaScript正则表达式模式匹配(2)——分组模式匹配

    var pattern=/google{4,8}$/; // {4,8}$表示匹配结尾4-8次 var str='googleeeeeeeee'; // 表示e的4-8次 alert(pattern. ...

  4. JavaScript正则表达式模式匹配(1)——基本字符匹配

    var pattern=/g..gle/; //点符号表示匹配除了换行符外的任意字符 var str='g78gle'; alert(pattern.test(str)); var pattern=/ ...

  5. JavaScript正则表达式模式匹配(4)——使用exec返回数组、捕获性分组和非捕获性分组、嵌套分组

    使用exec返回数组 var pattern=/^[a-z]+\s[0-9]{4}$/; var str='google 2012'; alert(pattern.exec(str)); //返回一个 ...

  6. javascript正则表达式简介

      javascript正则表达式 javascript正则表达式 regular expression是一个描述字符模式的对象: ECMAScript中的RegExp类表示正则表达式: String ...

  7. JavaScript正则表达式学习笔记(二) - 打怪升级

    本文接上篇,基础部分相对薄弱的同学请移步<JavaScript正则表达式学习笔记(一) - 理论基础>.上文介绍了8种JavaScript正则表达式的属性,本文还会追加介绍几种JavaSc ...

  8. 【前端知识体系-JS相关】10分钟搞定JavaScript正则表达式高频考点

    1.正则表达式基础 1.1 创建正则表达式 1.1.1 使用一个正则表达式字面量 const regex = /^[a-zA-Z]+[0-9]*\W?_$/gi; 1.1.2 调用RegExp对象的构 ...

  9. JavaScript 正则表达式——预定义类,边界,量词,贪婪模式,非贪婪模式,分组,前瞻

    ㈠预定义类    示例:匹配一个ab+数字+任意字符的字符串:ab\d.   ㈡边界 正则表达式常用的边界匹配字符   ⑴示例1:第一个是没写单词边界             第二个是加上字符边界的效 ...

随机推荐

  1. OAuth2.0学习(1-13)oauth2.0 的概念:资源、权限(角色)和scope

    mkk 关于资源的解释 : https://andaily.com/blog/?cat=19 resource用于将系统提供的各类资源进行分组管理, 每一个resource对应一个resource-i ...

  2. 05_Linux目录文件操作命令2_我的Linux之路

    这一节我们继续来学习Linux中对文件和目录的操作命令 mkdir 创建目录 mkdir (选项)(参数) 在Linux端可以使用mkdir来创建目录,如果你没有加其他的路径名,那么默认是在当前目录下 ...

  3. C#微信公众号——消息处理

    ​当普通微信用户向公众账号发消息时,微信服务器将POST消息的XML数据包到开发者填写的URL. 一.接收POST请求,处理XML信息 public void ProcessRequest(HttpC ...

  4. Python之Scrapy爬虫框架 入门实例(一)

    一.开发环境 1.安装 scrapy 2.安装 python2.7 3.安装编辑器 PyCharm 二.创建scrapy项目pachong 1.在命令行输入命令:scrapy startproject ...

  5. SQL 中的日期和时间类型

    在我们SQL中一般支持三种数据类型. date:日历日期,包括年(四位),月和日. time: 一天中的时间,包括小时,分和秒.可以用变量time(p)来表示秒的小数点后的数字位数(默认是0). 通过 ...

  6. Java:现有线程T1/T2/T3,如何确保T1执行完成之后执行T2,T3在T2执行完成之后执行。

    要实现多个线程执行完成先后,就要知道如何实现线程之间的等待,java线程等待实现是join.java的jdk中join方法实现如下: public final synchronized void jo ...

  7. javascript获取表单的各项值

    何谓表单? 表单是html页面中负责数据采集功能的部件,它往往由三个部分组成: 表单标签:<form></form> 用于声明表单的范围,位于表单标签中的元素将被提交.属性有m ...

  8. 区块链3.0:拥抱EOS

    EOS是当下最火的区块链技术,被社会广泛看好为下一代区块链3.0.不同于以太坊的学习,EOS的主语言是C++,本文作为EOS研究的首篇文章,重点介绍EOS的创新点,它的周边生态,各种概念原理的解释,以 ...

  9. Web SCADA 电力接线图工控组态编辑器

    前言 SVG并非仅仅是一种图像格式, 由于它是一种基于XML的语言,也就意味着它继承了XML的跨平台性和可扩展性,从而在图形可重用性上迈出了一大步.如SVG可以内嵌于其他的XML文档中,而SVG文档中 ...

  10. HDFS简介及相关概念

    HDFS简介: HDFS在设计时就充分考虑了实际应用环境的特点,即硬件出错在普通服务集群中是一种常态,而不是异常. 因此HDFS主要实现了以下目标: 兼容廉价的硬件设备 HDFS设计了快速检测硬件故障 ...