javascript学习笔记(五)正则表达式


Posted in Javascript onApril 08, 2011

常用到的元字符有:
•. 查找单个字符,除了换行和行结束符;
•\w 匹配字母、汉字、数字、下划线等符号;
•\s 匹配空白符(包含空格、制表符等);
•\d 匹配数字;
•\b 匹配位于单词的开头或结尾的匹配;
常用的量词有:
•^n 匹配任何开头为 n 的字符串;
•n$ 匹配任何结尾为 n 的字符串;
•n+ 匹配任何包含至少一个 n 的字符串;
•n* 匹配任何包含零个或多个 n 的字符串;
•n? 匹配任何包含零个或一个 n 的字符串;
•n{X} 匹配包含 X 个 n 的序列的字符串;
•n{X, Y} 匹配包含 X 或 Y 个 n 的序列的字符串;
简单举例,主要用于验证手机号码、电话号码及邮箱:
javascript部分代码:

function isMobile() { 
var mobile = document.getElementById("mobile_phone"); 
var num = mobile.value; 
var reg = /^(13[0-9]|186|188|150|151|158|159|147)\d{8}$/; 
if(num == "") { 
alert("请输入完整的手机号"); 
mobile.focus(); 
return false; 
} else if (reg.test(num)) { 
alert("输入的手机号格式正确"); 
} else { 
alert("请输入正确的11位手机号码"); 
mobile.focus(); 
return false; 
} 
} 
function isEmail() { 
var email = document.getElementById("email"); 
var email_value = email.value; 
if(email_value == "") { 
alert("请输入完整的邮箱"); 
email.focus(); 
return false; 
} else { 
var reg = /^[a-zA-Z0-9](\w)+@(\w)+(\.)+(com|com\.cn|net|cn|net\.cn|org|biz|info|gov|gov\.cn|edu|edu\.cn)$/; 
if(reg.test(email_value)) { 
alert("输入的邮箱格式正确"); 
} else { 
alert("请输入正确的邮箱格式"); 
email.focus(); 
return false; 
} 
} 
} 
function isPhone() { 
var phone = document.getElementById("phone"); 
var phone_value = phone.value; 
if(phone_value == "") { 
alert("请输入完整的座机号码"); 
phone.focus(); 
return false; 
} else { 
var reg = /^[(]?0\d{2,3}[)]?\s*[-]?\s*\d{7,8}$/; //010-87989898 01098989898 (0712)8989898 010 - 23343434 这些格式的座机号码都满足 
if(reg.test(phone_value)) { 
alert("输入的座机号码正确"); 
} else { 
alert("输入的座机号码格式错误"); 
phone.focus(); 
return false; 
} 
} 
}

HTML部分代码:
<p> 
<label for="mobile_phone">手 机</label> 
<input type="text" id="mobile_phone", name="mobile_phone" value="15107105287" /> 
<input type="button" value="validate" onclick="isMobile()" /> 
</p> 
<p> 
<label for="phone">座 机</label> 
<input type="text" id="phone" name="phone" value="027-87767676" /> 
<input type="button" value="validate" onclick="isPhone()" /> 
</p> 
<p> 
<label for="email">邮 箱</label> 
<input type="" id="email" name="email" value="zhangchen2397@126.com" /> 
<input type="button" value="validate" onclick="isEmail()" /> 
</p>
Javascript 相关文章推荐
下拉菜单点击实现连接跳转功能的js代码
May 19 Javascript
js 触发select onchange事件代码
Mar 20 Javascript
javascript:void(0)的问题使用探讨
Apr 10 Javascript
采用自执行的匿名函数解决for循环使用闭包的问题
Sep 11 Javascript
jQuery中:disabled选择器用法实例
Jan 04 Javascript
探析浏览器执行JavaScript脚本加载与代码执行顺序
Jan 12 Javascript
jQuery实现微信长按识别二维码功能
Aug 26 Javascript
详解Vue中使用v-for语句抛出错误的解决方案
May 04 Javascript
jquery与js实现全选功能的区别
Jun 11 jQuery
微信小程序 POST请求的实例详解
Sep 29 Javascript
图文详解vue框架安装步骤
Feb 12 Javascript
axios 实现post请求时把对象obj数据转为formdata
Oct 31 Javascript
javascript学习笔记(三)显示当时时间的代码
Apr 08 #Javascript
javascript 学习笔记(一)DOM基本操作
Apr 08 #Javascript
jQuery 名称冲突的解决方法
Apr 08 #Javascript
js 事件处理函数间的Event物件是否全等
Apr 08 #Javascript
Javascript 八进制转义字符(8进制)
Apr 08 #Javascript
JavaScript中判断函数是new还是()调用的区别说明
Apr 07 #Javascript
JavaScript中清空数组的三种方法分享
Apr 07 #Javascript
You might like
php图片处理:加水印、缩略图的实现(自定义函数:watermark、thumbnail)
2010/12/02 PHP
php调用dll的实例操作动画与代码分享
2012/08/14 PHP
探讨如何在PHP开启gzip页面压缩实例
2013/06/09 PHP
下拉列表多级联动dropDownList示例代码
2013/06/27 PHP
删除html标签得到纯文本可处理嵌套的标签
2014/04/28 PHP
PHP把MSSQL数据导入到MYSQL的方法
2014/12/27 PHP
使用xampp搭建运行php虚拟主机的详细步骤
2015/10/21 PHP
Zend Framework教程之分发器Zend_Controller_Dispatcher用法详解
2016/03/07 PHP
PHP实现批量删除(封装)
2017/04/28 PHP
YII框架http缓存操作示例
2019/04/29 PHP
基于PHP实现用户登录注册功能的详细教程
2020/08/04 PHP
JS常用正则表达式总结
2013/11/12 Javascript
使用postMesssage()实现iframe跨域页面间的信息传递
2016/03/29 Javascript
JavaScript中的Reflect对象详解(ES6新特性)
2016/07/22 Javascript
ES6正则表达式的一些新功能总结
2017/05/09 Javascript
vue微信分享到朋友圈 vue微信发送给好友
2018/11/28 Javascript
Vue实现的父组件向子组件传值功能示例
2019/01/19 Javascript
让mocha支持ES6模块的方法实现
2020/01/14 Javascript
vue实现公共方法抽离
2020/07/31 Javascript
.netcore+vue 实现压缩文件下载功能
2020/09/24 Javascript
解决ant Design中Select设置initialValue时的大坑
2020/10/29 Javascript
举例讲解Python中的list列表数据结构用法
2016/03/12 Python
Python学习pygal绘制线图代码分享
2017/12/09 Python
python3写爬取B站视频弹幕功能
2017/12/22 Python
Python动态导入模块的方法实例分析
2018/06/28 Python
pyqt5 QScrollArea设置在自定义侧(任何位置)
2019/09/25 Python
python如何判断IP地址合法性
2020/04/05 Python
Pytorch实现将模型的所有参数的梯度清0
2020/06/24 Python
计算机专业毕业生求职信分享
2013/12/24 职场文书
社团2014年植树节活动总结
2014/03/11 职场文书
优秀应届毕业生自荐书
2014/06/29 职场文书
中学生纪念九一八事变演讲稿
2014/09/14 职场文书
2015年幼儿园元旦亲子活动方案
2014/12/09 职场文书
2015年仓库工作总结
2015/04/09 职场文书
2016年读书月活动总结范文
2016/04/06 职场文书
python实现批量移动文件
2021/04/05 Python