我试图找到一个正则表达式,可以让我同时执行两个匹配两个条件。如果字符串至少包含以下子字符串中的一个,则我希望删除包含在两个特殊字符之间的任何字符串:“.jpeg”“.png”。
例如,给定以下文本:I like ice-cream very much! Oh me too! !be148b3b3992a514839e5d9a3c9b80bf--lego-stormtrooper-stormtroopers (1) (1).jpeg|width=474,height=273!
预期结果应该是:I like ice-cream very much! Oh me too!
我发现这个正则表达式!.*?!
可以删除!
之间的任何内容,但这也会删除文本Oh me too
任何帮助是非常感谢!:)
1条答案
按热度按时间lskq00tm1#
您可以使用
请参见this regex demo。它匹配
!
-一个!
字符[^!]*
-!
以外的零个或多个字符\.
- a.
字符(?:jpeg|png)
-jpeg
或png
[^!]*
-!
以外的零个或多个字符!
- a!
字符参见this regex demo。* 详情 *:
!
- a!
字符(?!\s)
-在第一个!
之后不应该有空白[^!]*
-!
以外的零个或多个字符\.
- a.
字符(?:jpeg|png)
-jpeg
或png
[^!]*
-!
以外的零个或多个字符!
- a!
字符注意:若要匹配
jpg
,请在您选择的模式中将jpeg
替换为jpe?g
。