Yuv*_*Mac 6 javascript regex string replace ecmascript-6
如何将所有Double引号替换为打开和关闭大括号.
let str = "This" is my "new" key "string";
Run Code Online (Sandbox Code Playgroud)
我试过这个正则表达式
str.replace(/"/,'{').replace(/"/,'}')
Run Code Online (Sandbox Code Playgroud)
但我最终得到了这个:
{This} is my "new" key "string"
Run Code Online (Sandbox Code Playgroud)
这里只有第一个字正在改变,但我想改变所有的话.我希望结果如下:
{This} is my {new} key {string}
Run Code Online (Sandbox Code Playgroud)
提前致谢.
小智 9
尝试使用全局正则表达式并使用捕获组:
let str = '"This" is my "new" key "string"';
str = str.replace(/"([^"]*)"/g, '{$1}');
console.log(str);Run Code Online (Sandbox Code Playgroud)
该"([^"]*)"正则表达式捕获",随后0以上的事情是不另一个",和一个闭合".替换$1用作引号中包含的内容的参考.