Javascript 正则表达式替换为捕获的
我想用“[”和“]”的自首替换字符串中的所有非字母数字字符 我试过这个:Javascript 正则表达式替换为捕获的,javascript,node.js,regex,regex-group,Javascript,Node.js,Regex,Regex Group,我想用“[”和“]”的自首替换字符串中的所有非字母数字字符 我试过这个: var text = "ab!@1b*. ef"; var regex = /\W/g; var result = text.replace(regex, "[$0]"); console.log(result); 我希望得到: ab[!][@]1b[*][.][.]ef 但我得到的却是: ab[$0][$0]1b[$0][$0][$0]ef 如何使用Javascript(节点)实现这一点?您需要将组括在括号中以将
var text = "ab!@1b*. ef";
var regex = /\W/g;
var result = text.replace(regex, "[$0]");
console.log(result);
我希望得到:
ab[!][@]1b[*][.][.]ef
但我得到的却是:
ab[$0][$0]1b[$0][$0][$0]ef
如何使用Javascript(节点)实现这一点?您需要将组括在括号中以将其分配给$1,如下所示:
var text=“ab!@1b*.ef”;
var regex=/(\W)/g;
var result=text.replace(regex,“[$1]”);
控制台日志(结果)代码>无需使用捕获组包装。使用text.replace(regex,[$&]”)