是否可以创建一个找到重复发生的值的正则表达式,并用一个随机选择的预定义值替换每个实例?
以下是要搜索的文字:
a f a f a f a ....
字母a
应该被替换,让我们说' apple '或' table '。
答案 0 :(得分:1)
JavaScript解决方案:
使用a
或apple
随机替换所有出现的table
:
var str = 'a f a f a f a ';
var re = /a/g;
var replacements = ['apple', 'table'];
var newStr = str.replace(re, function() {
var roll = Math.floor(Math.random() * 2);
return replacements[roll];
});
document.body.textContent = newStr;
答案 1 :(得分:0)
简单地使用此模式:
/a/g
/
分隔符a
匹配字符(区分大小写) g
全球。所有比赛(首场比赛时不返回)
var string = 'a f a f a f a ...';
var pattern = /a/g;
var replacements =['apple', 'table'];
var result = string.replace(pattern, function(re) {
return replacements[Math.floor(Math.random() * replacements.length)];
});
document.write(result);
答案 2 :(得分:0)
你应该尝试像
这样的东西yourString.replace(/a/g, "random");
答案 3 :(得分:0)
在 python 中,您应该使用replace()
字符串方法:
c_str = 'a f a f a f a'
print c_str.replace('a', 'apple')
要通过'apple'或'table'随机替换,您可以使用random
模块和list comprehension
:
import random
words = ['apple', 'table']
c_str_new = ''.join([c.replace('a', words[random.randint(0, 1)]) for c in c_str])