function check_phone_num(contactphone)
{
if(contactphone != '')
{
// 固定电话/小灵通
if(contactphone[0] == '0')
{
//var patt = /^((0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/;
var patt = /^((0\d{2,3})-)(\d{7,8})$/;
}
if(contactphone[0] == '1')//手机号码(13...,15...,17...,18...)
{
var patt = /^((13[0-9]{1})|(15[0-9]{1})|(17[0-9]{1})|(18[0-9]{1}))+(\d{8})$/;
}
else
{
return false;
}
if(patt.test(contactphone))
{
return true;
}
else
{
return false;
}
}
}
解释:电话号码的正则表达式:(用 ‘-’ 连接区号和电话号码)
/^((0\d{2,3})-)(\d{7,8})$/;
以0打头(^)
\d:表示数字
{2,3}最少两位,最多3位,
$: 以..结尾
注:可判断的固定电话中不包括分机号码,可以用代码中注掉的正则表达式判断带分机号的固定电话号码(分机号码位数不确定)