我正在使用JavaScript从推文中提取以9开头的电话号码,再提取其他9位数字。
这是我使用的正则表达式模式:var numberPattern = /^9[0-9]{9}/;
这是模式匹配阶段:
var numberstring = JSON.stringify(data[i].text);
if(numberPattern.test(data[i].text.toString()) == true){
var obj={
tweet : {
status : data[i].text
},
phone : numberstring.match(numberPattern)
}
//console.log(numberstring.match(numberPattern));
stringarray.push(obj);
问题是它只适用于少数几个而不是全部。另外,我想修改正则表达式以也接受数字的+91前缀和(或)拒绝数字的开头0。我是regex的初学者,因此需要帮助。谢谢。
例:
#Chennai O-ve blood for @arun_scribbles 's friend's father surgery in few days. Pl call 9445866298. 15May. via @arun_scribbles
最佳答案
var numberPattern = /([+]91)?9[0-9]{9}\b/;