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 相关文章推荐
javascript一些不错的函数脚本代码
Sep 10 Javascript
JAVASCRIPT keycode总结
Feb 04 Javascript
深入分析js中的constructor和prototype
Apr 07 Javascript
jQuery 开发者应该注意的9个错误
May 03 Javascript
时间戳转换为时间 年月日时间的JS函数
Aug 19 Javascript
实例详解jQuery Mockjax 插件模拟 Ajax 请求
Jan 12 Javascript
学习JavaScript设计模式之单例模式
Jan 19 Javascript
jQuery Dialog 打开时自动聚焦的解决方法(两种方法)
Nov 24 Javascript
javascript中活灵活现的Array对象详解
Nov 30 Javascript
vue中使用echarts制作圆环图的实例代码
Jul 27 Javascript
JavaScript对象原型链原理详解
Feb 05 Javascript
一定要知道的 25 个 Vue 技巧
Nov 02 Vue.js
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合并两个数组的两种方式的异同
2012/09/14 PHP
解析PHP自带的进位制之间的转换函数
2013/06/08 PHP
PHP生成迅雷、快车、旋风等软件的下载链接代码实例
2014/05/12 PHP
分享十款最出色的PHP安全开发库中文详细介绍
2015/03/22 PHP
基于PHP实现数据分页显示功能
2016/05/26 PHP
PHP在线打包下载功能示例
2016/10/15 PHP
一个javascript参数的小问题
2008/03/02 Javascript
JavaScript 学习笔记(十一)
2010/01/19 Javascript
jquery实现的一个导航滚动效果具体代码
2013/05/27 Javascript
js 控制页面跳转的5种方法
2013/09/09 Javascript
如何动态的导入js文件具体该怎么实现
2014/01/14 Javascript
js实现单击图片放大图片的方法
2015/02/17 Javascript
浅谈MVC+EF easyui dataGrid 动态加载分页表格
2016/11/10 Javascript
ES6(ECMAScript 6)新特性之模板字符串用法分析
2017/04/01 Javascript
JS实现为动态创建的元素添加事件操作示例
2018/03/17 Javascript
react+ant design实现Table的增、删、改的示例代码
2018/12/27 Javascript
vue+iview/elementUi实现城市多选
2019/03/28 Javascript
layui使用数据表格实现购物车功能
2019/07/26 Javascript
vue中后端做Excel导出功能返回数据流前端的处理操作
2020/09/08 Javascript
vue使用vant中的checkbox实现全选功能
2020/11/17 Vue.js
python读写ini文件示例(python读写文件)
2014/03/25 Python
python 的列表遍历删除实现代码
2020/04/12 Python
python用reduce和map把字符串转为数字的方法
2016/12/19 Python
python urllib爬取百度云连接的实例代码
2017/06/19 Python
python OpenCV学习笔记之绘制直方图的方法
2018/02/08 Python
python笔记_将循环内容在一行输出的方法
2019/08/08 Python
在PyTorch中Tensor的查找和筛选例子
2019/08/18 Python
Python基于DB-API操作MySQL数据库过程解析
2020/04/23 Python
python 使用tkinter+you-get实现视频下载器
2020/11/17 Python
欧洲最大的美妆零售网站:Feelunique
2017/01/14 全球购物
瑞典度假品牌:OAS
2019/05/28 全球购物
有创意的广告词
2014/03/18 职场文书
组织鉴定材料
2014/06/02 职场文书
中学生关于梦想的演讲稿
2014/08/22 职场文书
信息技术远程培训心得体会
2016/01/09 职场文书
MySQL聚簇索引和非聚簇索引的区别详情
2022/06/14 MySQL