如何从格式化的字符串中获取普通电话号码

时间:2014-05-12 21:01:43

标签: javascript regex

我有电话号码 (123)-456-7890 123-456-7890 123 - 456 - 7890

但我需要将这些转换为1234567890.我怎么能在Javascript中做到这一点?

2 个答案:

答案 0 :(得分:1)

通过替换删除不需要的字符。如果需要,您仍然可以使用正则表达式:

numbers = phoneNumber.replace(/[^\d]/g,'');

修改:如果您有兴趣捕获数字部分,可以使用.match()

parts = phoneNumber.match(/(\d{3}).*?(\d{3}).*?(\d{4})/);

parts将包含4个项目:

  • parts[0] - 捕获的字符串,从第一个数字到最后一个数字。
  • parts[1] - 区号(3位数字符串)
  • parts[2] - 前缀(3位数字符串)
  • parts[3] - 最后4位数字作为字符串。

然后你可以做你需要的东西把它们放在一个字符串中:

parts.shift();
number = parts.join('');

这也会给你相同的答案。

答案 1 :(得分:0)

尝试这样的事情:

var onlyNums = "(123)-456-7890".replace(/[^0-9]/g,"")