zl程序教程

您现在的位置是:首页 >  前端

当前栏目

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

2023-06-13 09:14:27 时间
常用到的元字符有:
•.查找单个字符,除了换行和行结束符;
•\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部分代码:
复制代码代码如下:

functionisMobile(){
varmobile=document.getElementById("mobile_phone");
varnum=mobile.value;
varreg=/^(13[0-9]|186|188|150|151|158|159|147)\d{8}$/;
if(num==""){
alert("请输入完整的手机号");
mobile.focus();
returnfalse;
}elseif(reg.test(num)){
alert("输入的手机号格式正确");
}else{
alert("请输入正确的11位手机号码");
mobile.focus();
returnfalse;
}
}
functionisEmail(){
varemail=document.getElementById("email");
varemail_value=email.value;
if(email_value==""){
alert("请输入完整的邮箱");
email.focus();
returnfalse;
}else{
varreg=/^[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();
returnfalse;
}
}
}
functionisPhone(){
varphone=document.getElementById("phone");
varphone_value=phone.value;
if(phone_value==""){
alert("请输入完整的座机号码");
phone.focus();
returnfalse;
}else{
varreg=/^[(]?0\d{2,3}[)]?\s*[-]?\s*\d{7,8}$/;//010-8798989801098989898(0712)8989898010-23343434这些格式的座机号码都满足
if(reg.test(phone_value)){
alert("输入的座机号码正确");
}else{
alert("输入的座机号码格式错误");
phone.focus();
returnfalse;
}
}
}

HTML部分代码:
复制代码代码如下:

<p>
<labelfor="mobile_phone">手机</label>
<inputtype="text"id="mobile_phone",name="mobile_phone"value="15107105287"/>
<inputtype="button"value="validate"onclick="isMobile()"/>
</p>
<p>
<labelfor="phone">座机</label>
<inputtype="text"id="phone"name="phone"value="027-87767676"/>
<inputtype="button"value="validate"onclick="isPhone()"/>
</p>
<p>
<labelfor="email">邮箱</label>
<inputtype=""id="email"name="email"value="zhangchen2397@126.com"/>
<inputtype="button"value="validate"onclick="isEmail()"/>
</p>