javascript - 使用变量生成正则表达式以用于 javascript 的替换函数

标签 javascript regex replace

<分区>

var n=str.replace(/blue/g,"red");

这会将字符串中的蓝色替换为红色。

但我只得到字符串 blue 作为要替换的字符串。我还需要替换所有不区分大小写的实例。我无法在变量中保留蓝色,然后在替换中使用它。我试过了。但它不会起作用。

var i = blue;
var rep = "/"+i+"/gi";
var n=str.replace(rep,"red");

最佳答案

为什么不呢:

var i = "blue";
var p = new RegExp(i,"gi");
var n = str.replace(p, "red");

关于javascript - 使用变量生成正则表达式以用于 javascript 的替换函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14930407/

相关文章:

javascript - 通过 -node.js - awilix 模块启动从父级扩展的类的参数

java - Java 中的 Arcane isPrime 方法

java - Java中的RegEx替换字符串

JavaScript:替换字符串中最后一次出现的文本

javascript - 在没有 Jquery 的情况下删除包装器 div(原始 javascript)

javascript - 将 angular-ui-select 与 Angular 种子项目结合使用

javascript - 当用户以最佳性能滚动时,如何检测视口(viewport)中的当前元素?

php - 正则表达式中的双加号是什么?

regex - 如何用正则表达式匹配国际字母表(英文a-z,+非英文)?

jQuery 不选择 p 标签中的 a 标签