gpt4 book ai didi

javascript - 正则表达式替换匹配任何字符的所有内容

转载 作者:行者123 更新时间:2023-11-29 18:35:52 25 4
gpt4 key购买 nike

a[b].innerHTML=a[b].innerHTML.replace(RegExp('['+bbc[c][0]+']','ig'),bbc[c][1])

这基本上就是我正在使用的。它被包裹在两个循环中,因此应该可以解释为什么它看起来像它所做的那样。基本上我想替换一些匹配'['+数组中的变量+']'的东西。我正在为一个免费论坛制作一个 BBCode 脚本,请不要指点我任何 BBCode 脚本。问题是正则表达式正在替换匹配任何字符的所有内容。因此,它将 [, q, c, o, d, e, ]] 全部替换为数组的第二部分。 (QCODE 是一个正在使用的 BBCode 示例)我不知道它是否在带有 [] 的普通/regex/中执行此操作,但它非常烦人。我试过转义 [] ('\['+v+'\]'),我试过 eval(),我试过你能想到的一切。我需要让这个东西像它应该的那样工作,因为一切都按照它应该的方式设置。如果您知道如何解决此问题,请回答。不过,我希望您在回答之前先测试一下您的解决方案,因为您不知道不知道我尝试了多少种方法来实现这一目标。

最佳答案

使用正确的转义字符:

RegExp('\\['+bbc[c][0]+'\\]','ig'),

/ 只是一个常规字符(正则表达式文字除外,您没有使用它),转义字符是 \。您还必须转义两次,一次针对字符串文字,一次针对正则表达式。

关于javascript - 正则表达式替换匹配任何字符的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3221753/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com