Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用regex replace删除bb代码_Javascript_Regex - Fatal编程技术网

Javascript 使用regex replace删除bb代码

Javascript 使用regex replace删除bb代码,javascript,regex,Javascript,Regex,我试图通过Javascript删除BBCode标记,但我无法理解如何删除 将所有标记添加到数组中,例如: var bbcodes = ["[b]", "[/b]"]; 然后搜索我的文本并将bbcode替换为“” 此外,如果我想从文本中删除以下标记->[color=red]text[/color]我需要什么表达式来删除[color=red]和[/color]?注意,“红色”可以更改为任何长度,也可以是十六进制值([color=#ff0000]text[/color]) 我已经尝试将[color=

我试图通过Javascript删除BBCode标记,但我无法理解如何删除

将所有标记添加到数组中,例如:

var bbcodes = ["[b]", "[/b]"];
然后搜索我的文本并将bbcode替换为“”

此外,如果我想从文本中删除以下标记->
[color=red]text[/color]
我需要什么表达式来删除
[color=red]
[/color]
?注意,“红色”可以更改为任何长度,也可以是十六进制值(
[color=#ff0000]text[/color]

我已经尝试将[color=(.*)添加到数组中,但是像以前一样,只有'color='被删除,而不是#hex值或'[])

提前谢谢

text.replace(/\[\/?(?:b|i|u|s|left|center|right|quote|code|list|img|spoil|color).*?\]/g, '')
还将提供
color=foo
剥离

或使用

text.replace(/\[\/?[^\]]*\]/g, '')

要去除各种
[foo something]
标记。

您可以使用正则表达式
\[\\?\w*\]


看看

你需要避开方括号:
“\[b\]”,“\[/b\]”,…
我把数组改为:var bbcode=[“\[b\]”,“\[\/b\]”;但是,只有“b”被删除。对不起,请将javascript的转义字符加倍:
“\\[b\\]”,“\\[\\/b\\]”
很好,这很有效。你有什么想法吗?@Matt你可以用这个:。只需将
NullHandler
ContentHandler
注册为所有短代码的默认处理程序,它们将被完全删除或从短代码标记中删除。您也可以这样做:因为它已经使用上面的库实现了短代码删除功能。如果你需要帮助,请告诉我。
"[b]", "[/b]", "[i]", "[/i]", "[u]", "[/u]", "[s]", "[/s]", "[left]", "[/left]", "[center]", "[/center]", "[right]", "[/right]", "[quote]", "[/quote]", "[code]", "[/code]", "[list]", "[/list]", "[img]", "[/img]", "[spoil]", "[/spoil]"
text.replace(/\[\/?(?:b|i|u|s|left|center|right|quote|code|list|img|spoil|color).*?\]/g, '')
text.replace(/\[\/?[^\]]*\]/g, '')