遍历 Javascript 正则表达式匹配以修改原始字符串
Iterate through Javascript regex matches to modify original string
只是想知道替换字符串上匹配的最佳方法。
value.replace("bob", "fred");
例如,有效,但我希望"bob"的每个实例都替换为我存储在数组中的随机字符串。只是做一个正则表达式匹配会返回匹配的文本,但不允许我在原始字符串中替换它。有没有简单的方法可以做到这一点?
例如,我希望字符串:
"Bob went to the market. Bob went to the fair. Bob went home"
也许弹出为
"Fred went to the market. John went to the fair. Alex went home"
您可以替换为函数调用的值:
var names = ["Fred", "John", "Alex"];
var s = "Bob went to the market. Bob went to the fair. Bob went home";
s = s.replace(/Bob/g, function(m) {
return names[Math.floor(Math.random() * names.length)];
});
例如,这给出了:
"John went to the market. Fred went to the fair. John went home"
相关文章:
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- 在编译阶段后创建新的DOM树,或者继续使用原始修改的DOM
- 修改后的原始数组值
- jquery下拉菜单修改所选文本,但在后续单击时显示先前所选文本的原始值
- 为什么数组上的 js 映射会修改原始数组
- 从作为参数传入的数组中删除对象不会修改原始数组 (Angular)
- 如何在传单中编辑多边形后获得修改和原始的geojson点
- 遍历 Javascript 正则表达式匹配以修改原始字符串
- 如何实现一个插件,它只在需要时修改原始模块
- 通过javascript获取原始/未修改的请求字符串
- 在 javascript 中的原始对象中修改
- 为什么在这种情况下排序会修改原始
- 无法获得修改后的fabic.js对象的旋转角度以报复原始角度
- 使用forEach、映射或筛选器克隆和操作嵌套对象,而不修改原始对象
- 修改函数内部的JavaScript对象,如果出现错误,则返回原始对象
- 原始字符串是否始终保持未修改
- 使用jQuery在原始值的基础上修改每个文本字段的值
- 对象/数组方法:修改原始的还是创建新的?指导方针
- 是否有可能在不修改原始代码的情况下向现有javascript函数添加一些代码?
- 如何替换数组元素而不修改原始数组并创建副本