gpt4 book ai didi

javascript - 如何将正则表达式替换为 Javascript 中的数组元素

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

我遇到了以下问题。我想替换数组字符串相应元素名称上的标签。解释起来可能有点笨拙,所以我将向您展示代码:

var test = [];
test['some'] = 'Some test';
var content = '{some}';
document.write(content.replace(/{([^}]+)}/g, test[RegExp.$1])); // It doesn't work
document.write(test[RegExp.$1]); // It work

现在我的问题是:为什么替换标签没有获取测试 ['some'] 中保存的字符串(未定义)?在第二次尝试获取正常字符串“Some test”期间。转换时如何将其修复为正确转换的标签?

最佳答案

您需要转义 { 和 },因为它们都是特殊的正则表达式符号:

使用这个正则表达式:

/\{([^}]+)\}/g

编辑:您需要带有自定义函数处理程序的 String#replace:

repl = content.replace(/\{([^}]+)\}/g, function($0, $1) {return test[$1];});

关于javascript - 如何将正则表达式替换为 Javascript 中的数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22734220/

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