代码之家  ›  专栏  ›  技术社区  ›  Jessica

在字符串中添加前缀+1

  •  -3
  • Jessica  · 技术社区  · 5 年前

    如何从一个字符串中删除所有非10位数字,如果它还不存在,在它前面加上+1 1?

    这是我的regex代码:

    phoneNumber.replace(/[^0-9.\,]/g, '');
    phoneNumber = '+1' + phoneNumber;
    

    但如果 phoneNumber 已经有了 +1 . 如何使regex首先删除所有非数字,并添加前缀+1?

    1 回复  |  直到 5 年前
        1
  •  -1
  •   J369    5 年前

    您要检查前面是否有可选的+1。

    "+167t6if6".replace(/(\+1)?[^0-9.\,]./g, '');
    phoneNumber = '+1' + phoneNumber;
    

    这将匹配零个或一个出现的+1和任意数量的非数字。

    (\+1)? 这将检查可选的+1

    结尾的句点使任何数量的非数字匹配-这是在+1之后没有非数字的情况下。