正则表达式中的惰性匹配模式(?)是什么意思?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1368个文字,预计阅读时间需要6分钟。
正则表达式懒惰匹配模式:在贪婪匹配模式一章中已经讲过人性是贪婪的,希望获得更多的金钱、地位乃至美女,但也有许多清心寡欲的人,只要满足基本的生活需求就可以满足了。在正则表达式中,?符号用于实现懒惰匹配,允许表达式尽可能少地进行匹配。
正则表达式惰性匹配模式:
在贪婪匹配模式一章节已经说过人性是贪婪的,希望获得更多的金钱、地位甚至美女,但是也有很多清心寡欲的人,只要满足基本的生活需求就可以了,在正则表达式中也有这样的匹配原则,下面就进行一下介绍。
一.惰性模式的概念:
此模式和贪婪模式恰好相反,它尽可能少的匹配字符以满足正则表达式即可,例如:
var str="axxyyzbdkb"; console.log(str.match(/a.*b/));
以上代码是贪婪模式,于是能够匹配整个字符串,下面将其修改成惰性匹配模式:
var str="axxyyzbdkb"; console.log(str.match(/a.*?b/));
上面的代码即是惰性匹配,方法就是在重复量词后面加一个问号(?)即可。
惰性匹配模式是尽可能少的匹配字符,但是必须要满足正则表达式的匹配规则,例如上面的代码,*可以重复匹配0个或者多个前面的字符或者子表达式,但是正则表达式的结尾必须是b,所以正则表达式可以匹配上面字符串中的axxyyzb。
本文共计1368个文字,预计阅读时间需要6分钟。
正则表达式懒惰匹配模式:在贪婪匹配模式一章中已经讲过人性是贪婪的,希望获得更多的金钱、地位乃至美女,但也有许多清心寡欲的人,只要满足基本的生活需求就可以满足了。在正则表达式中,?符号用于实现懒惰匹配,允许表达式尽可能少地进行匹配。
正则表达式惰性匹配模式:
在贪婪匹配模式一章节已经说过人性是贪婪的,希望获得更多的金钱、地位甚至美女,但是也有很多清心寡欲的人,只要满足基本的生活需求就可以了,在正则表达式中也有这样的匹配原则,下面就进行一下介绍。
一.惰性模式的概念:
此模式和贪婪模式恰好相反,它尽可能少的匹配字符以满足正则表达式即可,例如:
var str="axxyyzbdkb"; console.log(str.match(/a.*b/));
以上代码是贪婪模式,于是能够匹配整个字符串,下面将其修改成惰性匹配模式:
var str="axxyyzbdkb"; console.log(str.match(/a.*?b/));
上面的代码即是惰性匹配,方法就是在重复量词后面加一个问号(?)即可。
惰性匹配模式是尽可能少的匹配字符,但是必须要满足正则表达式的匹配规则,例如上面的代码,*可以重复匹配0个或者多个前面的字符或者子表达式,但是正则表达式的结尾必须是b,所以正则表达式可以匹配上面字符串中的axxyyzb。

