如何从字符串中删除空格和一组字符

时间:2018-02-01 10:31:57

标签: javascript regex

我忘了在100

之后再提一个空格

我有这个字符串phone="+46 (0) 100 234567",我想得到没有(0)和空格的相同数字。(在javascript中)

最终:phone = "+46100234567"

到目前为止我尝试过的是:

  1. phone.replace(/[(0)]*[^0-9+]/g, '', '') =>它会删除所有0的
  2. phone.replace(/\(0\)\s*/g,'') =>它会删除(0)但保留空格。
  3. 欢迎任何帮助。

4 个答案:

答案 0 :(得分:2)

console.info("+46 (0) 100 234567".replace(/\(0\)|\s/g, ''));

一种解决方案是"+46 (0) 100 234567".replace(/\(0\)|\s/g, '') 使用全局属性/g,您无需使用*

答案 1 :(得分:1)

使用此正则表达式:

\s+|\(\d*\)

用空白字符串替换匹配

Click for Demo

<强>解释

  • \s+ - 匹配1个以上的空格
  • | - 或
  • \(\d*\) - 匹配(后跟0+数字后跟)

<强> CODE

const regex = /\s+|\(\d*\)/g;
const str = `+46 (0) 100 234567`;
const subst = ``;

const result = str.replace(regex, subst);

console.log('Substitution result: ', result);

答案 2 :(得分:0)

试试这个表达式:

/\s*\(0\)\s*/g

答案 3 :(得分:0)

试试这个:

var phone = "+46 (0) 100234567";
phone.replace(/\s*\(0\)\s*/g,'');