我在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]
.