生成字符串以在Javascript上使用正则表达式

时间:2015-07-03 20:45:05

标签: javascript jquery regex

我在jQuery中制作了一个faker插件(jQuery-Faker),它生成了伪造的数据,用于填写与其字段名称对应的表单。 所以我想用正则表达式/\(?([0-9]{3})\)?([ .-]?)([0-9]{3})\2([0-9]{4})/生成电话号码 有没有办法做到这一点?

2 个答案:

答案 0 :(得分:6)

您可能希望查看来自regex系列库的字符串。

Here is the one for javascript

README 中所示,您可以

var RandExp = require('randexp');
var phoneGenerator = new RandExp(/\(?([0-9]{3})\)?([ .-]?)([0-9]{3})\2([0-9]{4})/);
phoneGenerator.gen(); // =>

答案 1 :(得分:3)

尝试使用String.prototype.replace()



var n = "01234567890".split("")
, ph = "nnn-nnn-nnnn".replace(/n/g, function() {
  var i = Math.floor(Math.random() * n.length);
  return n.slice(i, i + 1)[0]
});
document.write(ph);