我有一个正则表达式,它应该将
[img]foo.bar[/img]
重写为<img src=foo.bar>
,实际上也确实实现了这一点。但问题在于,如果字符串中有两个或更多的[img]url.ext[/img]
,它不会单独匹配每个标签,而是匹配第一个[img]
和最后一个[/img]
,并将中间的 URL 和标签作为src
的一部分。我的 PHP 代码如下:$newstring = preg_replace('%\[img\](.+)\[/img\]%', '<img src=${1}>', $string);
一个可工作的示例网址是:https://www.regex101.com/r/mJ9sM0/1