一个<textarea >输入框,当输入或粘贴号码进去时怎么自动过滤掉非手机号(13和15开头的)或小灵通号码(02188888888/075412345678/05711234567,小灵通的号码有可能是七位或八位),并在每个号码后换行(一号码一行)。比如输入
13812345678
1432345345
13242344323
15912345678
05788765431
057112345678
02112345678
12345435
1381234567红色标记的应该都属于非法手机号或小灵通号,这时就自动过滤掉变成
13812345678
13242344323
15912345678
05788765431
057112345678
02112345678
============
请教大家这要怎么实现呢。谢谢
13812345678
1432345345
13242344323
15912345678
05788765431
057112345678
02112345678
12345435
1381234567红色标记的应该都属于非法手机号或小灵通号,这时就自动过滤掉变成
13812345678
13242344323
15912345678
05788765431
057112345678
02112345678
============
请教大家这要怎么实现呢。谢谢
{
return /^\d{7,10}$/.test(num);
}
var numbers = [
'13812345678',
'1432345345',
'13242344323',
'15912345678',
'05788765431',
'057112345678',
'02112345678',
'12345435',
'1381234567'
];function filterNumber(numList) {
var res = [],
filterReg = new RegExp("(^(13|15)\\d{9})|0\\d{2,3}\\d{7,8}");
for (var i = 0, ln = numList.length; i < ln; i++) {
var matches = numList[i].match(filterReg);
if (matches) {
res.push(matches[0]);
}
}
return res;
}
var res = filterNumber(numbers);
console.log(res)// output: 13812345678,13242344323,15912345678,05788765431,057112345678,02112345678
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#btnFilter").click(function(){
var text = $("textarea").val();
var part = /((13|15)\d{9}\n?)|(0\d{9,10}\n)/gi;
var temp = text.match(part);
$("textarea").val(temp.join(''));
});
});
</script>
</head><body>
<textarea rows='15'>
13812345678
1432345345
13242344323
15912345678
05788765431
057112345678
02112345678
12345435
1381234567
</textarea>
<input type='button' id='btnFilter' value='过滤' >
</body></html>