Javascript 使用regex replace删除bb代码
我试图通过Javascript删除BBCode标记,但我无法理解如何删除 将所有标记添加到数组中,例如: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=
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, '')