这里的其他答案预先假定你有一个支持非贪婪匹配的正则表达式引擎,这是Perl 5中引入的扩展并被广泛复制到其他现代语言中; 但它绝不是无处不在的。许多较旧的语言和编辑器仅支持传统的正则表达式,它们没有控制重复运算符贪婪的机制*- 它总是匹配最长的字符串。然后,诀窍是限制首先允许匹配的内容。而不是.*你似乎在寻找[^>]*仍然匹配尽可能多的东西成为可能; 但事物不仅仅是.“任何角色”,而是“任何不是”的角色>。根据您的应用程序,您可能希望也可能不希望启用选项以允许“任何字符”包含换行符。即使你的正则表达式引擎支持非贪婪匹配,最好说明你的实际意思。如果这就是你的意思,你应该这样说,而不是依靠非贪婪的匹配(希望,可能)Do Do I Mean。当然,如果你需要应对,这仍然不是你想要的<img title="quoted string with > in it" src="other attributes"> and perhaps <img title="nested tags">,但在这一点上,你应该最终放弃使用正则表达式,就像我们首先告诉你的那样。