我想从字符串中获取有效的电话号码。你能帮帮我吗:
var s = 'This is a mobile number example : 09540298880,+91-9540298880,+919540298880,919540298880,8888888,-91888880';
var r = /([0-9]+){1}|(+[0-9]+-{4})+[0-9]+/g;
console.log(s.match(r));
它应该给出这个有效(输出(电话号码:
09540298880,+91-9540298880,+919540298880
这里有一个建议:
bd{11}b|+d{2}-?d{10}
从您的输入来看,它匹配:
09540298880
+91-9540298880
+919540298880
var s = 'This is a mobile number example : 09540298880,+91-9540298880,+919540298880,919540298880,8888888,-91888880';
var r = /bd{11}b|+d{2}-?d{10}/g;
console.log(s.match(r));
在正则表达式101上进行测试
尝试使用以下正则表达式,您的数字格式是印度标准,我基于此创建了正则表达式,
var string = "09540298880,+91-9540298880,+919540298880,919540298880,8888888,-91888880"
var result = string.match(/(?:[0+])(?:[7-9][1]{1,2}-?)?(?:[0-9]{10})/g)
console.log(result)
(?:[0+])(?:[7-9][1]{1,2}-?)?(?:[0-9]{10})
正则表达式演示