如果我想捕获到一个终点为止的所有内容,我相信这两个返回的结果相同。
([^=]+)=
(.+?)=
除了您的标准高尔夫成绩以外,还有什么理由比另一个更好吗?
答案 0 :(得分:0)
取反的字符类模式将在一个步骤中匹配其内容,而懒惰的字符类模式将逐个字符扩展字符,这将使前者的性能更好。
请注意换行符,.
可能会或可能不会涉及换行符,具体取决于引擎和修饰符,[^ =]将在几乎所有引擎中涉及到。
如果此模式中还有其他内容,则.+?
可能会扩展到边框字符上,而[^=]+
则永远不会扩展。例如。 ([^=]+)=3
和(.+?)=3
在1=2=3
上的匹配将不同。