(中国大陆移动134,135,136,137,138,139,150,151,157,158,159号码段、中国联通的130,131,132,133,153,155,156号码段和中国电信3G手机号码段188,中国网通3G手机号码189号码段)
1、 前3位号码必须是130、131、132、133、134、135、136、137、138、139、150、151、153、156、157、158、159、188、189其中之一,否则提示“不合法的手机号码” ;
2、 必须是11位的数字号码;
中国手机号码:(86)*0*13d{9}
中国固定电话号码:((d{3,4})|d{3,4}-|s)?d{8}
中国电话号码(包括移动和固定电话):((d{3,4})|d{3,4}-|s)?d{7,14}
代码如下 |
复制代码 |
Function SUBmobile(tel)
Set RegEx = New RegExp
RegEx.IgnoreCase =True
RegEx.Pattern = "^(13[0-9]|15[0|1|2|3|6|7|8|9]|18[6|7|8|9])d{8}$"
SUBmobile=RegEx.test(tel)
End Function
|
调用方法:
代码如下 |
复制代码 |
mMobile=trim(request.form("Mobile")) '//获取手机号码代码。
if SUBmobile(mMobile) then
'//执行操作——手机号格式正确!
else
'//执行操作——手机号码格式不正确!
end if
|
asp验证提高内容中手机号正则表达式
代码如下 |
复制代码 |
Function RegExpTest(patrn, strng)
Dim regEx, Match, Matches ' 建立变量。
Set regEx = New RegExp ' 建立正则表达式。
regEx.Pattern = patrn ' 设置模式。
regEx.IgnoreCase = True ' 设置是否区分字符大小写。
regEx.Global = True ' 设置全局可用性。
Set Matches = regEx.Execute(strng) ' 执行搜索。
For Each Match in Matches ' 遍历匹配集合。
'RetStr = RetStr & "Match found at position "
'RetStr = RetStr & Match.FirstIndex & ". Match Value is '"
RetStr = RetStr & Match.Value
Next
RegExpTest = RetStr
End Function
|
下面看一段asp.net手机号验证实例
代码如下 |
复制代码 |
using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;
using System.Windows.Forms;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
// string s = @"^(13[0-9]|15[0|3|6|8|9])d{8}$";
string s = @"^(13[0-9]|15[0|3|6|7|8|9]|18[8|9])d{8}$";
while (true)
{
string input = Console.ReadLine();
if (Regex.IsMatch(input, s))
{
MessageBox.Show("完全符合!");
}
else
{
MessageBox.Show("不符合!");
}
}
}
}
}
|