美文网首页
贪婪模式和非贪婪模式

贪婪模式和非贪婪模式

作者: Zulu_c02a | 来源:发表于2020-02-11 23:27 被阅读0次

贪婪模式
先看那个例子

var str = 'a ''witch" and her "broom" is one';
str.match(/".*"/g)
//[""witch" and her "broom""]

得到的是[""witch" and her "brom""],而并不是我们之前想到的"witch"和"broom",因为js的引擎在运行的时候,首先匹配双引号,匹配到开头的双引号,然后匹配
".*"(也就是除了回车和换行之外的所有字符),因为js引擎的机制会一直从a运行到e,这个时候才会匹配到最后的双引号,这个时候js引擎开始从最后往前匹配,匹配到的第一个双引号就作为数组元素的最后一个双引号,所以匹配到的是[""witch" and her "brom""]。这就是贪婪模式。
非贪婪模式
非贪婪模式与贪婪模式相反,通过在代表数量的标识符后面放置?来开启非贪婪模式,?的作用就是尽量的减少匹配。
看个例子

var str = 'a ''witch" and her "broom" is one';
str.match(/".*"/g)
//[""witch"", ""brom""]
得到的是"witch"和"brom"

相关文章

  • 贪婪模式和非贪婪模式

    贪婪模式先看那个例子 得到的是[""witch" and her "brom""],而并不是我们之前想到的"wit...

  • 第23章 正则表达式作业

    第1题:什么是贪婪模式和非贪婪模式? 什么是贪婪模式和非贪婪模式? 比如{3,5}这个量词,要是在句子中出现了十次...

  • javascript正则表达式

    什么是贪婪模式和非贪婪模式? 贪婪与非贪婪模式影响的是被量词修饰的子表达式的匹配行为,贪婪模式在整个表达式匹配成功...

  • JS正则

    一、什么是贪婪模式和非贪婪模式? 贪婪模式:就是量词在默认情况下尽可能的多匹配。例如: 非贪婪模式:就是尽可能少的...

  • 正则表达式的贪婪模式和非贪婪模式

    一、什么是贪婪模式和非贪婪模式? 定义 贪婪模式:正则表达式趋向于匹配最大长度。 非贪婪模式:正则表达式趋向于匹配...

  • JavaScript 正则表达式( 匹配网页的图片地址)

    正则表达式 - 元字符 贪婪模式与非贪婪模式 贪婪与非贪婪模式影响的是被量词修饰的子表达式的匹配行为;贪婪模式 在...

  • 正则表达式

    1.什么是贪婪模式和非贪婪模式? 量词在默认下是尽可能多的匹配的,就是贪婪模式;非贪婪模式,让正则表达式尽可能少的...

  • 006.聊聊 JavaScript 正则表达式 下卷

    有点复杂,是转载的文章 贪婪模式与非贪婪模式讲解 Javascript中的正则贪婪与非贪婪模式的区别是: 被量词修...

  • 正则表达式

    1.什么是贪婪模式和非贪婪模式? 贪婪模式 一般情况下,正则表达式在匹配过程中会尽可能多的匹配 非贪婪模式 让正则...

  • 039 Python语法之正则表达式

    正则的基本语法 贪婪与非贪婪模式 Python中的数量词默认是贪婪模式的,总是默认尝试匹配更多的字符,非贪婪模式则...

网友评论

      本文标题:贪婪模式和非贪婪模式

      本文链接:https://www.haomeiwen.com/subject/jowffhtx.html