用0替换前三个字符

时间:2018-10-05 03:45:38

标签: javascript jquery regex validation replace

我要从字符串中删除所有空格,并用+61替换0。我正在检查前三个字符是否为+61,然后将其替换为0

下面的代码可以正常工作

 function updateMobileNumber() {
    var updatedMobileValue = visibleField.val().replace(/\s+/g, "");
    if (updatedMobileValue.charAt(0) === '+'&& 
        updatedMobileValue.charAt(1) === '6'&& 
        updatedMobileValue.charAt(2) === '1' ){
           updatedMobileValue = updatedMobileValue.replace('+61', '0');
     }
    console.log(updatedMobileValue);
 }

有什么有效的方法可以做到这一点。

任何建议将不胜感激。

预先感谢

1 个答案:

答案 0 :(得分:6)

您已经使用.replace删除了空格,请尝试再次使用.replace将字符串开头的+61替换为0

function updateMobileNumber() {
  var updatedMobileValue = visibleField.val()
    .replace(/\s+/g, "")
    .replace(/^\+61/, '0');
  console.log(updatedMobileValue);
}

正则表达式中的^表示该位置位于字符串的开头,并且由于\是一个字符,因此需要+之前的+在正则表达式中具有特殊含义,因此要表示文字加号,必须先对其进行转义。