PHP preg_replace 到 JavaScript |英国广播公司



我在PHP中有正则表达式模式

$s = preg_replace("#[URL=(.*)](.*)[/URL]#Ui", "<a href="$1" target="_blank">$2</a>", $s);
$s = preg_replace("#[CODE=(.*)](.*)[/CODE]#Uis", "<pre class="brush: $1">$2</pre>", $s);
$s = preg_replace("#[URL](.*)[/URL]#Ui", "<a href="$1" target="_blank">$1</a>", $s);
$s = preg_replace("#[IMG](.*)[/IMG]#Ui", "<p align='center'><img src="$1" border="0" /></p>", $s);

我怎样才能将它们转换为JavaScript

我尝试了这种组合,但它不起作用(?

body.replace(/[URL=(.*)](.*)[/URL]/g, '<a href="$1" target="_blank">$2</a>');

@Kolink这适用于单个图像

body = body.replace(/[IMG]([dD]*)[/IMG]/gi, '<p align="center"><img src="$1" border="0" /></p>');

但是如果我添加第二张图像,那么在这个例子中一切都会崩溃

[IMG]http://www.someimage.com/123.jpg[/IMG]Test
[IMG]http://www.someimage.com/456.jpg[/IMG]

匹配将是

http://www.someimage.com/123.jpg[/IMG]Test[IMG]http://www.someimage.com/456.jpg
您需要

g后添加i以使正则表达式不区分大小写。

此外,JavaScript 不支持"多行"修饰符。相反,您需要将.替换为类似 [dD] .

最新更新