如何从字符串中删除所有非10位数字,并在其前面添加+1(如果还不存在)?
这是我拥有的正则表达式代码:
phoneNumber.replace(/[^0-9.\,]/g, '');
phoneNumber = '+1' + phoneNumber;
,但是如果phoneNumber
已经有+1
,则此方法将无效。我该如何使正则表达式首先删除所有非数字值,并添加+1前缀?
答案 0 :(得分:-1)
您要在前面检查可选的+1。
"+167t6if6".replace(/(\+1)?[^0-9.\,]./g, '');
phoneNumber = '+1' + phoneNumber;
这将匹配零次或一次出现的+1,以及任意数量的非数字。
(\+1)?
这会检查可选的+1
末尾的句号可以匹配任意数量的非数字-这是在+1之后没有非数字的情况。