如何将字符串转换为与 string.replace 原型(prototype)一起使用的正则表达式模式?
预期的解决方案:
var regex = "/(\w+)_(\w+)/i";
var pattern = new RegExp(regex);
console.log("some_name".replace(pattern, "$1-$2"));
// expected output: some-name
// output: some_name
[编辑1]
正则表达式模式似乎是上面的代码无法按预期工作的部分原因,但是,由于某种原因,传递与正则表达式相同的模式,如 King Stone 概述的那样。
最佳答案
var pattern = /(\w+)_(\w+)/i;
// var pattern = new RegExp(regex);
console.log("some_name".replace(pattern, "$1-$2"));
输出:
some-name
关于javascript - 将字符串作为正则表达式模式传递给 String.prototype.replace,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59216924/