小编典典

如何编写匹配非贪婪的正则表达式?

all

我需要有关与非贪婪选项匹配的正则表达式的帮助。

匹配模式是:

<img\s.*>

要匹配的文本是:

<html>
<img src="test">
abc
<img
  src="a" src='a' a=b>
</html>

我在http://regexpal.com上测试

<img此表达式匹配从到最后的所有文本>>我需要它与在 initial
之后遇到的第一个匹配<img,所以在这里我需要得到两个匹配而不是我得到的一个。

我尝试了所有 _non-greedy?_的组合,但没有成功。


阅读 120

收藏
2022-03-18

共1个答案

小编典典

非贪婪的?工作非常好。只是您需要在您正在测试的正则表达式引擎( regexpal ,您使用的引擎,也有此选项)中选择 点匹配所有选项。
这是因为,当您使用. 您需要明确告诉他们您也想将换行符与 __.``.

例如,

<img\s.*?>

工作正常!

在此处检查结果

此外,请阅读 dot
在各种正则表达式中的行为方式。
****

2022-03-18