如果我想替换字符串中的数字,我会执行以下操作:
"a3v".replace(/\d+/,"") // "av"
但是,在字符串“dynamic_fields [n] [key]”中,我想用括号1替换括号内的n。这是我到目前为止所做的:
"dynamic_fields[n][key]".replace(/^.+[(n)]/,1)
不幸的是,这是它给我的结果:
"1][key]"
即使我预料到:
"dynamic_fields[1][key]"
为什么它不识别捕获组()并用1替换其中的内容?我究竟做错了什么?
答案 0 :(得分:0)
这可以很容易地完成:
var string = "dynamic_fields[n][key]";
var replaced = string.replace(/\[n\]/,"\[1\]");
alert(replaced);

基本上,这会找到角色" n"用括号括起来,用" 1"替换它。用括号括起来。记得"逃避"括号使他们字面意思。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Values,_variables,_and_literals#String_literals
我希望这有帮助!
答案 1 :(得分:0)