【发布时间】:2019-08-07 18:37:44
【问题描述】:
所以我创建了这个函数来替换字符串中的特殊字符。主要目的是替换 BBCode 标记内的那些特殊字符([code=any]我要显示的代码 [/code]),但当时是否替换其余的并不重要BBcode 标记之外的字符串。但是现在我在替换 BBcode 标记之外的 HTML 标记时遇到了问题。所以我试图为此想出一个解决方案,但到目前为止还没有运气。
目标是替换以下内容中的特殊字符:
[code=any]some code inside of here[/code]
还应该提到,当我说代码=任何意思时,它可以是任何东西。它可以是 HTML、CSS、PHP、JS [a-z-A-Z-0-9]。
更像
[code=[a-z-A-Z-0-9]<h1>some html insode of the bbcode to be replace</h1>[/code]
我目前的功能很简单。只需要一些基本的正则表达式:
replaceSpecial : function(str) {
str = str.replace(/&/g, "&");
str = str.replace(/>/g, ">");
str = str.replace(/</g, "<");
str = str.replace(/"/g, """);
str = str.replace(/'/g, "'");
return str;
}
但是我将如何重写它,以便它只替换以下内容中的文本:[code=any]some code inside here[/code] 就是这样。如果有人对此有解决方案,那就太棒了。
感谢您的宝贵时间, 乔恩·W
【问题讨论】:
-
你可以使用捕获组regex101.com/r/KGCWmq/1查看我更新的问题
-
请考虑将我的答案标记为已接受,因为它对您有用,如果对您有帮助,请点赞。
标签: javascript regex bbcode