javascript 手机号码正则表达式验证函数 原创

代码如下:

function checkMobile(){
    var sMobile = document.mobileform.mobile.value
    if(!(/^1[3|4|5|8][0-9]\d{4,8}$/.test(sMobile))){
        alert("不是完整的11位手机号或者正确的手机号前七位");
        document.mobileform.mobile.focus();
        return false;
    }
}

下面是我们编辑对上面正则表达式的简单分析,随着以后手机号码段的增加,大家可以自己扩展功能,不懂正则的朋友看完这篇文章应该会了点啊。
主要是这段代码了,以后大家修改这段就可以了
^1[3|4|5|8][0-9]\d{4,8}$
^1代表以1开头,现在中国的手机号没有是其它开头的,以后不一定啊
[3|4|5|8] 紧跟上面的1后面,可以是3或4或5或8的一个数字,如果以后出现190开始的手机号码了,就需要如下[3|4|5|8|9]
[0-9]表示0-9中间的任何数字,可以是0或9
\d{4,8} 这个\d跟[0-9]意思一样,都是0-9中间的数字。{4,8}表示匹配前面的最低4位数字最高8位数字。这里为什么不是直接的8呢,因为手机号码归属地查询的时候,根据前7位就可以知道具体的地址了,后面的4位没有影响的。
下面是测试代码:

function checkMobile(){
var sMobile = document.mobileform.mobile.value
if(!(/^1[3|5][0-9]\d{4,8}$/.test(sMobile))){
alert("不是完整的11位手机号或者正确的手机号前七位");
document.mobileform.mobile.focus();
return false;
}
}

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

下面是我们从别的网站找来的代码。大家可以看下。另我们推荐大家学习下正则表达式,好多地方离开正则表达式真的不行。
\d 代表一个数字
例如:1或2或3,单个数字
如果是多个可以用\d*
\d{7,8} 代表7-8位数字(表示电话号码)
例如:12345678
{7,8}表示7位或9位数字,一般电话号码符合。
\d{3,} 代表分机号码
例如:123,12345
{3,}表示最低3个数字,可以更多
0\d{2,3} 代表区号
例如:021
[0\+]\d{2,3} 代表国际区号
如果使用减号连接,完整的应该是
/^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/

测试代码:

function testit(){
var filter=/^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/;
alert(filter.test(txt.value));
}

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

正则表达式30分钟入门教程
http://www.jb51.net/tools/zhengze.html
正则表达式 基础资料
http://www.jb51.net/article/18526.htm

(0)

相关推荐

  • javascript:;与javascript:void(0)使用介绍

    最近看了好几个关于<a>标签和javascript:void(0)的帖子,谨记于此,以资查阅. 注:以下代码未经全面测试,但每一种方法可能会出现的情况都基本做了说明. 在做页面时,如果想做一个链接点击后不做任何事情,或者响应点击而完成其他事情,可以设置其属性 href = "#",但是,这样会有一个问题,就是当页面有滚动条时,点击后会返回到页面顶端,用户体验不好. 目前有如下几种解决办法: 1)点击链接后不做任何事情 <a href="javascript:

  • Android webveiw 出现栈错误解决办法

    Android webveiw 出现栈错误解决办法 前言: 最近做一个项目,项目调试基础库的一个调试工具展示设备信息页面使用WebView.有一个应用集成调试基础库展示内容时出现 java.lang.UnsupportedOperationException: For security reasons, WebView is not allowed in privileged processes 因为应用是系统级别的,在AndroidManifest.xml中添加了android:sharedU

  • java使double保留两位小数的多方法 java保留两位小数

    复制代码 代码如下: mport java.text.DecimalFormat; DecimalFormat    df   = new DecimalFormat("######0.00"); double d1 = 3.23456  double d2 = 0.0;double d3 = 2.0;df.format(d1); df.format(d2); df.format(d3); 3个结果分别为: 复制代码 代码如下: 3.230.00 2.00 java保留两位小数问题:

  • java写入文件的几种方法分享

    一,FileWritter写入文件 FileWritter, 字符流写入字符到文件.默认情况下,它会使用新的内容取代所有现有的内容,然而,当指定一个true (布尔)值作为FileWritter构造函数的第二个参数,它会保留现有的内容,并追加新内容在文件的末尾. 1. 替换所有现有的内容与新的内容. new FileWriter(file);2. 保留现有的内容和附加在该文件的末尾的新内容. 复制代码 代码如下: new FileWriter(file,true); 追加文件示例 一个文本文件,

  • java.net.SocketException: Connection reset 解决方法

    自从SEOTcs系统11月份24日更新了一下SEO得分算法以来,一直困扰我的一个问题出现了,java的数据job任务,在执行过程中会经常报以下的错误: "2011-12-03 18:00:32 DefaultHttpClient [INFO] I/O exception (java.net.SocketException) caught when processing request: Connection reset by peer: socket write error2011-12-03

  • javascript 手机号码正则表达式验证函数 原创

    复制代码 代码如下: function checkMobile(){     var sMobile = document.mobileform.mobile.value     if(!(/^1[3|4|5|8][0-9]\d{4,8}$/.test(sMobile))){         alert("不是完整的11位手机号或者正确的手机号前七位");         document.mobileform.mobile.focus();         return false;

  • javascript IP、域名、手机号码正则表达式验证代码

    这个手机号码正则验证函数可以说是最新的都支持的,里面有详细的介绍说明,不论以后增加什么号段大家都非常容易的稍微修改一下即可.javascript 手机号码正则表达式验证函数 复制代码 代码如下: //ip与域名验证函数 function checkIP() {     var ipArray,ip,j;     ip = document.ipform.ip.value; if(/[A-Za-z_-]/.test(ip)){         if (ip.indexOf(" ")>

  • JavaScript常用正则验证函数实例小结【年龄,数字,Email,手机,URL,日期等】

    本文实例总结了JavaScript常用正则验证函数.分享给大家供大家参考,具体如下: 1.验证年龄格式(年龄只能0~99,两位数) //验证年龄格式(年龄只能0~99,两位数) function ValidateUserAge(age) { var regNum = /^[0-9]{1,2}$/; if (regNum.test(age)) { return true; } else { alert("请输入正确的年龄!") return false; } } 2.控制文本框只能输入数

  • JavaScript 正则表达式验证函数代码

    利用正则表达式判断是否是0-9的阿拉伯数字 复制代码 代码如下: function regIsDigit(fData) { var reg = new RegExp("^[0-9]$"); return (reg.test(fData)); } 利用这则表达式获取字符串的长度 复制代码 代码如下: function regDataLength(fData) { var valLength = fData.length; var reg = new RegExp("^[\u03

  • javascript 身份证号码验证函数(可辨真伪,支持15或18位身份证号)测试误差为0

    //验证身份证号方法 var test=function(idcard){ var Errors=new Array("验证通过!","身份证号码位数不对!","身份证号码出生日期超出范围或含有非法字符!","身份证号码校验错误!","身份证地区非法!"); var area={11:"北京",12:"天津",13:"河北",14:"山西

  • java正则表达式验证函数

    复制代码 代码如下: /** * 验证 正则表达式 * * @author zhujie regex 正则表达式 value 所属字符串 * @return boolean */ public static boolean regex(String regex, String value) { Pattern p = Pattern.compile(regex); Matcher m = p.matcher(value); return m.find(); }

  • 一句话JavaScript表单验证代码

    表单的客户端javascript验证有各种各样的写法,登录为form的onsubmit事件或submit按扭写一个函数.对于小表单(只有一两个表单域的表单)就不必再专门再用javascript写一个验证函数了,只需要在form的onsubmit事件里加上: 复制代码 代码如下: onsubmit="return domainname.value=="?(alert('请输入搜索内容'),false):true;" 这样只有一句话,实现了验证成功时提交,失败时给出提示的功能.其

  • JS正则表达式验证端口范围(0-65535)

    javascript正则表达式验证IP地址的端口合法性 if (!(/^[1-9]\d*$/.test(port) && 1 <= 1 * port && 1 * port <= 65535)){ return false } 提示文案: 您的端口不符合范围:0-65535 PS:下面看下JavaScript(Js)正则表达式验证IP+端口号 开发环境(蓝色粗体字为特别注意内容) 1,开发语言:JavaScript. 2,参考文献:https://www.jb5

  • JavaScript正则表达式验证代码(推荐)

    RegExp:是正则表达式(regular expression)的简写. 正则表达式描述了字符的模式对象.可以使用正则表达式来描述要检索的内容. 简单的模式可以是一个单独的字符.更复杂的模式包括了更多的字符,并可用于解析.格式检查.替换等等. //判断输入内容是否为空 function IsNull(){ var str = document.getElementById('str').value.trim(); if(str.length==0){ alert('对不起,文本框不能为空或者为

  • JavaScript 表单验证正则表达式大全[推荐]

    具体和函数结合的使用方法,还请查看下篇文章 JavaScript 使用正则表达式进行表单验证的示例代码 复制代码 代码如下: 匹配中文字符的正则表达式: [u4e00-u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^x00-xff] 评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 匹配空白行的正则表达式:ns*r 评注:可以用来删除空白行 匹配HTML标记的正则表达式:< (S*?)[^>]*>.*?

随机推荐