什么是正则表达式的贪婪模式和非贪婪模式?
我们先从例子入手:1
2var str = 'a "witch" and her "boom" is one';
str.match(/".*"/g);
原本想要匹配的字符为"witch"
和"broom"
两个字符串,运行以上的例子看看运行结果:
发现匹配的是"witch" and her "broom"
这个字符串,之所以出现这个结果,是因为正则表达式的贪婪模式在起作用。
查找算法
我们假设自己是正则引擎,模拟一下搜索实现的过程。
正则引擎先从字符串的第0位开始搜索。