角色类别:渴望消极还是积极的?

时间:2019-01-14 09:40:12

标签: regex

如果我想捕获到一个终点为止的所有内容,我相信这两个返回的结果相同。

([^=]+)=
(.+?)=

除了您的标准高尔夫成绩以外,还有什么理由比另一个更好吗?

1 个答案:

答案 0 :(得分:0)

取反的字符类模式将在一个步骤中匹配其内容,而懒惰的字符类模式将逐个字符扩展字符,这将使前者的性能更好。

请注意换行符,.可能会或可能不会涉及换行符,具体取决于引擎和修饰符,[^ =]将在几乎所有引擎中涉及到。

如果此模式中还有其他内容,则.+?可能会扩展到边框字符上,而[^=]+则永远不会扩展。例如。 ([^=]+)=3(.+?)=31=2=3上的匹配将不同。