-->

PHP的preg_replace为JavaScript | BB代码(PHP preg_repl

2019-09-18 08:33发布

我在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\]([\d\D]*)\[\/IMG\]/gi, '<p align="center"><img src="$1" border="0" /></p>');

但如果我在这个例子中添加第二图像这一切崩溃becauase

[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

Answer 1:

您需要添加i的后g使正则表达式不区分大小写。

此外,JavaScript不支持“多”改性剂。 相反,你将需要更换. 用类似[\d\D]



文章来源: PHP preg_replace to JavaScript | BBCode