常用正则表达式

Posted on 2008-12-12 10:16 李春生 阅读(391) 评论(1)  编辑  收藏 所属分类: javascript

1.常用验证方法
//校验是否全由数字组成
代码
function isDigit(s)  
{  
var patrn=/^[0-9]{1,20}$/;  
if (!patrn.exec(s)) return false 
return true 
}  
//校验登录名:只能输入5-20个以字母开头、可带数字、“_”、“.”的字串
代码
function isRegisterUserName(s)  
{  
var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;  
if (!patrn.exec(s)) return false 
return true 
}  
//校验用户姓名:只能输入1-30个以字母开头的字串
代码
function isTrueName(s)  
{  
var patrn=/^[a-zA-Z]{1,30}$/;  
if (!patrn.exec(s)) return false 
return true 
}  
}}  
//校验密码:只能输入6-20个字母、数字、下划线  
[code]  
function isPasswd(s)  
{  
var patrn=/^(\w){6,20}$/;  
if (!patrn.exec(s)) return false 
return true 
}  

//校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-”
代码
function isTel(s)  
{  
//var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/;  
var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;  
if (!patrn.exec(s)) return false 
return true 
}  

//校验手机号码:必须以数字开头,除数字外,可含有“-”
代码
function isMobil(s)  
{  
var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;  
if (!patrn.exec(s)) return false 
return true 
}  
//校验邮政编码
代码
function isPostalCode(s)  
{  
//var patrn=/^[a-zA-Z0-9]{3,12}$/;  
var patrn=/^[a-zA-Z0-9 ]{3,12}$/;  
if (!patrn.exec(s)) return false 
return true 
}  
//校验搜索关键字
代码
function isSearch(s)  
{  
var patrn=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:;'\,.<>/?]{1}[^`~!@$%^&()+=|\\\]  
        [\]\{\}:;'\,.<>?]{0,19}$/;  
if (!patrn.exec(s)) return false 
return true 
}  
 
function isIP(s) //by zergling  
{  
var patrn=/^[0-9.]{1,20}$/;  
if (!patrn.exec(s)) return false 
return true 
}  

function validateTel(telStr){
 var re1=/^(\d{3}-|\d{4}-)(\d{8}|\d{7})$/;
 if(re1.test(telStr)){return true;}
 return false;
}
function validateMobile(mobileStr){
 var re2=/^1\d{10}$/;
 if(re2.test(mobileStr)){return true;}
 return false;
}
//验证电话或手机号
function phoneRegcheck(){
var mobile=document.getElementById("telephone").value;
var str=mobile;
var reg=/^(([0\+]\d{2,3}-)?(0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/;
var myreg = /^(((13[0-9]{1})|159|158|150|156|155)+\d{8})$/;
//alert(reg.test(str)) ;
if (reg.test(str)==true||myreg.test(str))
 {
   document.getElementById("phone").innerHTML="<img src='Spreader/images/zhengque.gif' width=16 height=16><font color=#cd0072>手机号或电话号正确!</font>";
 }
else
 {
  document.getElementById("phone").innerHTML="<img src='Spreader/images/cuowu.gif' width=16 height=16><font color=#cd0072>手机号或电话号不正确!</font>";
 return false;
 }
}

2.正则表达式
代码
"^\\d+$"  //非负整数(正整数 + 0)  
"^[0-9]*[1-9][0-9]*$"  //正整数   
"^((-\\d+)|(0+))$"  //非正整数(负整数 + 0)   
"^-[0-9]*[1-9][0-9]*$"  //负整数   
"^-?\\d+$"    //整数   
"^\\d+(\\.\\d+)?$"  //非负浮点数(正浮点数 + 0)   
"^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$"   
//正浮点数   
"^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$"  //非正浮点数(负浮点数 + 0)   
"^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"   
//负浮点数   
"^(-?\\d+)(\\.\\d+)?$"  //浮点数   
"^[A-Za-z]+$"  //由26个英文字母组成的字符串   
"^[A-Z]+$"  //由26个英文字母的大写组成的字符串   
"^[a-z]+$"  //由26个英文字母的小写组成的字符串   
"^[A-Za-z0-9]+$"  //由数字和26个英文字母组成的字符串   
"^\\w+$"  //由数字、26个英文字母或者下划线组成的字符串   
"^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$"    //email地址   
"^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$"  //url  
"^[A-Za-z0-9_]*$" 

Feedback

# re: 常用正则表达式  回复  更多评论   

2008-12-12 10:31 by 草包书生
正则表达式的确比写代码去处理字符安逸

只有注册用户登录后才能发表评论。


网站导航:
 

posts - 5, comments - 10, trackbacks - 0, articles - 23

Copyright © 李春生