使用正则表达式从数字中删除前导+或00

时间:2019-01-18 13:57:16

标签: javascript regex

如果数字存在,我需要从数字的开头删除+或00。因此,像+37253783478这样的数字将输出37253783478,而0037253783478将输出37253783478。符合此模式的正则表达式会是什么样?

编辑:我已经成功使用^0+删除了前导零,但我不知道如何匹配这两种情况。

1 个答案:

答案 0 :(得分:2)

如果我理解此要求,以下内容将适合这两种情况。本质上,您需要做的是使用正则表达式或运算符|

以下内容将删除所有前导0

str.replace(/(^0+|^\+)/,'')

但是,如果您只需要删除两个前导0,请使用以下代码:

str.replace(/(^00|^\+)/,'')

这是对您的示例的作用:

let nums = ['+37253783478', '0037253783478', '0037253780478', '375378+0478'];
let replaced = nums.map(num => num.replace(/(^0+|^\+)/,''));
console.log(replaced);