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 相关文章推荐
jquery中的 $(&quot;#jb51&quot;)与document.getElementById(&quot;jb51&quot;) 的区别
Jul 26 Javascript
jquery cookie实现的简单换肤功能适合小网站
Aug 25 Javascript
原生js编写设为首页兼容ie、火狐和谷歌
Jun 05 Javascript
jQuery插件animateSlide制作多点滑动幻灯片
Jun 11 Javascript
ECMAScript6新增值比较函数Object.is
Jun 12 Javascript
jQuery实现的仿百度,仿谷歌搜索下拉框效果示例
Dec 30 Javascript
基于JavaScript实现本地图片预览
Feb 08 Javascript
解决在Bootstrap模糊框中使用WebUploader的问题
Mar 22 Javascript
微信小程序自定义tabBar组件开发详解
Sep 24 Javascript
vue 封装 Adminlte3组件的实现
Mar 18 Javascript
javascript使用Blob对象实现的下载文件操作示例
Apr 18 Javascript
Vue 修改网站图标的方法
Dec 31 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
在Windows中安装Apache2和PHP4的权威指南
2006/10/09 PHP
php二分查找二种实现示例
2014/03/12 PHP
php线性表的入栈与出栈实例分析
2015/06/12 PHP
phpStudy访问速度慢和启动失败的解决办法
2015/11/19 PHP
PHP 7安装使用体验之性能大提升,兼容性强,扩展支持不够(升级PHP要谨慎)
2017/07/27 PHP
php使用curl模拟浏览器表单上传文件或者图片的方法
2018/11/10 PHP
JavaScript constructor和instanceof,JSOO中的一对欢喜冤家
2009/05/25 Javascript
用jquery修复在iframe下的页面锚点失效问题
2014/08/22 Javascript
node.js中的path.isAbsolute方法使用说明
2014/12/08 Javascript
angular中实现li或者某个元素点击变色的两种方法
2017/07/27 Javascript
详解bootstrap导航栏.nav与.navbar区别
2017/11/23 Javascript
详解node.js中的npm和webpack配置方法
2018/01/21 Javascript
不使用JavaScript实现菜单的打开和关闭效果demo
2018/05/01 Javascript
微信小程序登录态和检验注册过没的app.js写法
2019/05/22 Javascript
vue实现权限控制路由(vue-router 动态添加路由)
2019/11/04 Javascript
vue form表单post请求结合Servlet实现文件上传功能
2021/01/22 Vue.js
python避免死锁方法实例分析
2015/06/04 Python
Django自定义用户认证示例详解
2018/03/14 Python
Python----数据预处理代码实例
2019/03/20 Python
浅谈python的输入输出,注释,基本数据类型
2019/04/02 Python
python远程连接MySQL数据库
2019/04/19 Python
python从list列表中选出一个数和其对应的坐标方法
2019/07/20 Python
关于django 1.10 CSRF验证失败的解决方法
2019/08/31 Python
pygame实现五子棋游戏
2019/10/29 Python
如何在Anaconda中打开python自带idle
2020/09/21 Python
美国顶级防滑鞋:Shoes For Crews
2017/03/27 全球购物
viagogo法国票务平台:演唱会、体育比赛、戏剧门票
2017/03/27 全球购物
生产管理的三大手法
2013/11/11 职场文书
淘宝活动策划方案
2014/02/06 职场文书
幼儿园小班评语大全
2014/04/17 职场文书
学雷锋志愿者活动总结
2014/06/27 职场文书
2014年国庆晚会主持词
2014/09/19 职场文书
销售经理工作失职检讨书
2014/10/24 职场文书
绿色环保倡议书
2015/04/28 职场文书
倡议书范文大全
2015/04/28 职场文书
SpringDataJPA在Entity中常用的注解介绍
2021/12/06 Java/Android