Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript从联系人号码中删除空格、国家代码和乞求零_Javascript_Regex_String_Replace - Fatal编程技术网

JavaScript从联系人号码中删除空格、国家代码和乞求零

JavaScript从联系人号码中删除空格、国家代码和乞求零,javascript,regex,string,replace,Javascript,Regex,String,Replace,我有联系人列表,需要从手机号码中删除国家代码(+91)、数字和零之间的空格(前缀为零)。它应该只包含10个数字 我试过用下面的方法使用正则表达式,但它只删除了数字中的空格 var value = "+91 99 16 489165"; var mobile = ''; if (value.slice(0,1) == '+' || value.slice(0,1) == '0') { mobile = value.replace(/[^a-zA-Z0-9+]/g, ""); } else

我有联系人列表,需要从手机号码中删除国家代码(+91)、数字和零之间的空格(前缀为零)。它应该只包含10个数字

我试过用下面的方法使用正则表达式,但它只删除了数字中的空格

var value = "+91 99 16 489165";
var mobile = '';
if (value.slice(0,1) == '+' || value.slice(0,1) == '0') {
    mobile = value.replace(/[^a-zA-Z0-9+]/g, "");
} else {
    mobile = value.replace(/[^a-zA-Z0-9]/g, "");
}

console.log(mobile);

如果确定“+”或“0”后面有国家代码,可以使用string.substr

我希望这有助于:

var value=“+91 99 16 489165”;
var mobile=“”;
//首先删除所有空格:
值=值。替换(/\s/g');
//如果存在countrycode,则此If将删除它。。
if(value.startsWith(“+”)){
var temp=值子字符串(3,值长度);
mobile=“0”+温度;
//手机号码:
控制台日志(移动);
}
//如果没有countrycode,则只删除空格
否则{
移动=价值;
//手机号码:
控制台日志(移动);

}
这里有一个正则表达式,我只用来删除电话号码中的国家/地区代码部分:

var mobile = value.replace(/^\+[0-9]{1,3}(\s|\-)/, "");
美国:

+13457678

+1-453-677-7655

印度:

+919916489165

它适用于本网站上列出的所有国家代码,如果它们在您的数据中以“+”符号开头:

然后请选择答案
var value="+91 99 16 489165";
// Remove all spaces
var mobile = value.replace(/ /g,'');

// If string starts with +, drop first 3 characters
if(value.slice(0,1)=='+'){
       mobile = mobile.substring(3)
    }

// If string starts with 0, drop first 4 characters
if(value.slice(0,1)=='0'){
       mobile = mobile.substring(4)
    }

console.log(mobile);
var value="+91 99 16 489165";
var mobile = '';
if(value.charAt(0) == '+' || value.charAt(0)=='0'){
    mobile = value.replace(/[^a-zA-Z0-9+]/g, "").substr(3);
}
else {
    mobile = value.replace(/[^a-zA-Z0-9]/g, "");
}
var mobile = value.replace(/^\+[0-9]{1,3}(\s|\-)/, "");