希望获得一个JS替换函数来将[[...]]更改为myFunction('...')。
"player.email = '[[UserID]]@email.com';"
成为:
"player.email = '" + myGetterFunction('userid') + "@email.com';"
[[]]成为myFunction('') 和[[]]中的值变为小写
的假设:
有人能指出我这个大多数通用设置的方向吗?难以理解的部分是在不做一些疯狂分裂的情况下降低[[]]的内容。确定一些Ninja正则表达式已经存在用于令牌替换(到目前为止我看到的样本正在替换每个令牌的特定值,我只想转换令牌和包装器。
答案 0 :(得分:0)
您可以使用替换功能处理捕获的组:
str.replace(/\[\[(.*?)\]\]/g, function(text) {
return myGetterFunction(text.toLowerCase());
});
/\[\[(.*?)\]\]/g
可能看起来很复杂,但它实际上只是一堆转义的方括号。 (.*?)
是一个非贪婪的捕获组。