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使用activex控件的代码
Jan 27 Javascript
javascript定时保存表单数据的代码
Mar 17 Javascript
三个js循环的关键字示例(for与while)
Feb 16 Javascript
JS实现支持Ajax验证的表单插件
Mar 24 Javascript
JavaScript检测原始值、引用值、属性
Jun 20 Javascript
详解Js模板引擎(TrimPath)
Nov 22 Javascript
AngularJS实现的根据数量与单价计算总价功能示例
Dec 26 Javascript
AngularJs的UI组件ui-Bootstrap之Tooltip和Popover
Jul 13 Javascript
JavaScript设计模式之代理模式实例分析
Jan 16 Javascript
利用weixin-java-miniapp生成小程序码并直接返回图片文件流的方法
Mar 29 Javascript
vue以组件或者插件的形式实现throttle或者debounce
May 22 Javascript
请求时token过期自动刷新token操作
Sep 11 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
?生?D片??C字串
2006/12/06 PHP
PHP扩展框架之Yaf框架的安装与使用
2016/05/18 PHP
PHP多维数组排序array详解
2017/11/21 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
2019/10/03 PHP
通用于ie和firefox的函数 GetCurrentStyle (obj, prop)
2006/12/27 Javascript
各种常用浏览器getBoundingClientRect的解析
2009/05/21 Javascript
JSON.stringify 语法实例讲解
2012/03/14 Javascript
jQuery动画animate方法使用介绍
2013/05/06 Javascript
浅谈下拉菜单中的Option对象
2015/05/10 Javascript
JS选项卡动态替换banner图片路径的方法
2015/05/11 Javascript
JS实现的文字与图片定时切换效果代码
2015/10/06 Javascript
深入分析Javascript事件代理
2016/01/30 Javascript
利用Jquery队列实现根据输入数量显示的动画
2016/09/01 Javascript
js+css3制作时钟特效
2016/10/16 Javascript
node.js 和HTML5开发本地桌面应用程序
2016/12/13 Javascript
微信小程序图片选择、上传到服务器、预览(PHP)实现实例
2017/05/11 Javascript
Vue实现百度下拉提示搜索功能
2017/06/21 Javascript
vue2.0设置proxyTable使用axios进行跨域请求的方法
2017/10/19 Javascript
Angular实现的table表格排序功能完整示例
2017/12/22 Javascript
JS实现的缓冲运动效果示例
2018/04/30 Javascript
解决element-ui中下拉菜单子选项click事件不触发的问题
2018/08/22 Javascript
微信小程序用户授权、位置授权及获取微信绑定手机号
2019/07/18 Javascript
python中的编码知识整理汇总
2016/01/26 Python
python操作 hbase 数据的方法
2016/12/18 Python
python 实现将字典dict、列表list中的中文正常显示方法
2018/07/06 Python
Python3.5文件读与写操作经典实例详解
2019/05/01 Python
Django框架实现的分页demo示例
2019/05/25 Python
python matplotlib库的基本使用
2020/09/23 Python
学生自我鉴定范文
2013/10/04 职场文书
小组合作学习反思
2014/02/18 职场文书
领导干部对照检查材料
2014/08/24 职场文书
自我检讨书怎么写
2015/05/07 职场文书
2015年乡镇残联工作总结
2015/05/13 职场文书
Netty结合Protobuf进行编解码的方法
2021/06/26 Java/Android
nginx配置之并发频次限制
2022/04/18 Servers
Python使用DFA算法过滤内容敏感词
2022/04/22 Python