常用正則驗(yàn)證

/判斷輸入內(nèi)容是否為空
function IsNull(){
var str = document.getElementById('str').value.trim();
if(str.length==0){
alert('對(duì)不起挥吵,文本框不能為空或者為空格!');//請(qǐng)將“文本框”改成你需要驗(yàn)證的屬性名稱!
}
}
   
//判斷日期類型是否為YYYY-MM-DD格式的類型
function IsDate(){ 
var str = document.getElementById('str').value.trim();
if(str.length!=0){
var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/; 
var r = str.match(reg); 
if(r==null)
alert('對(duì)不起击费,您輸入的日期格式不正確!'); //請(qǐng)將“日期”改成你需要驗(yàn)證的屬性名稱!
}
} 
   
//判斷日期類型是否為YYYY-MM-DD hh:mm:ss格式的類型
function IsDateTime(){ 
var str = document.getElementById('str').value.trim();
if(str.length!=0){
var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/; 
var r = str.match(reg); 
if(r==null)
alert('對(duì)不起,您輸入的日期格式不正確!'); //請(qǐng)將“日期”改成你需要驗(yàn)證的屬性名稱!
}
} 
   
//判斷日期類型是否為hh:mm:ss格式的類型
function IsTime() 
{ 
var str = document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^((20|21|22|23|[0-1]\d)\:[0-5][0-9])(\:[0-5][0-9])?$/ 
if(!reg.test(str)){
alert("對(duì)不起,您輸入的日期格式不正確!");//請(qǐng)將“日期”改成你需要驗(yàn)證的屬性名稱!
}
}
} 
   
//判斷輸入的字符是否為英文字母
function IsLetter() 
{ 
var str = document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[a-zA-Z]+$/; 
if(!reg.test(str)){
alert("對(duì)不起,您輸入的英文字母類型格式不正確!");//請(qǐng)將“英文字母類型”改成你需要驗(yàn)證的屬性名稱!
}
}
} 
   
//判斷輸入的字符是否為整數(shù)
function IsInteger() 
{   
var str = document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[-+]?\d*$/; 
if(!reg.test(str)){
alert("對(duì)不起,您輸入的整數(shù)類型格式不正確!");//請(qǐng)將“整數(shù)類型”要換成你要驗(yàn)證的那個(gè)屬性名稱!
}
}
} 
   
//判斷輸入的字符是否為雙精度
function IsDouble(val) 
{ 
var str = document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[-\+]?\d+(\.\d+)?$/;
if(!reg.test(str)){
alert("對(duì)不起,您輸入的雙精度類型格式不正確!");//請(qǐng)將“雙精度類型”要換成你要驗(yàn)證的那個(gè)屬性名稱扇售!
}
}
} 
   
   
//判斷輸入的字符是否為:a-z,A-Z,0-9
function IsString() 
{ 
var str = document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[a-zA-Z0-9_]+$/; 
if(!reg.test(str)){
alert("對(duì)不起,您輸入的字符串類型格式不正確!");//請(qǐng)將“字符串類型”要換成你要驗(yàn)證的那個(gè)屬性名稱嚣艇!
}
}
} 
   
//判斷輸入的字符是否為中文
function IsChinese() 
{ 
var str = document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[\u0391-\uFFE5]+$/;
if(!reg.test(str)){
alert("對(duì)不起承冰,您輸入的字符串類型格式不正確!");//請(qǐng)將“字符串類型”要換成你要驗(yàn)證的那個(gè)屬性名稱!
}
}
} 
   
//判斷輸入的EMAIL格式是否正確
function IsEmail() 
{ 
var str = document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
if(!reg.test(str)){
alert("對(duì)不起食零,您輸入的字符串類型格式不正確!");//請(qǐng)將“字符串類型”要換成你要驗(yàn)證的那個(gè)屬性名稱困乒!
}
}
} 
   
//判斷輸入的郵編(只能為六位)是否正確
function IsZIP() 
{ 
var str = document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^\d{6}$/;
if(!reg.test(str)){
alert("對(duì)不起,您輸入的字符串類型格式不正確!");//請(qǐng)將“字符串類型”要換成你要驗(yàn)證的那個(gè)屬性名稱贰谣!
}
}
} 
   
//判斷輸入的數(shù)字不大于某個(gè)特定的數(shù)字
function MaxValue() 
{ 
var val = document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[-+]?\d*$/; 
if(!reg.test(str)){//判斷是否為數(shù)字類型
if(val>parseInt('123')) //“123”為自己設(shè)定的最大值
{ 
alert('對(duì)不起娜搂,您輸入的數(shù)字超出范圍');//請(qǐng)將“數(shù)字”改成你要驗(yàn)證的那個(gè)屬性名稱迁霎!
} 
}
}
} 
   
   
 Phone : /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/
 Mobile : /^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$/
 Url : /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/   
 IdCard : /^\d{15}(\d{2}[A-Za-z0-9])?$/   
 QQ : /^[1-9]\d{4,8}$/   
 某種特殊金額:/^((\d{1,3}(,\d{3})*)|(\d+))(\.\d{2})?$/   //說明:除“XXXXX,XXXXX,XXX.00”格式外

//為上面提供各個(gè)JS驗(yàn)證方法提供.trim()屬性   
String.prototype.trim=function(){   
return this.replace(/(^\s*)|(\s*$)/g, "");
}

調(diào)用:
<input type="text" name="str" >
<input type="button" value=" 確定 " onClick="">//onClick中寫自己要調(diào)用的JS驗(yàn)證函數(shù)

<script language="javascript" type="text/javascript">
var patterms = new Object();
//驗(yàn)證IP
patterms.ip = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])(\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])){3}$/;
//驗(yàn)證EMAIL
patterms.email = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
//驗(yàn)證日期格式2009-07-13
patterms.date = /^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[0-1])$/;
//驗(yàn)證時(shí)間格式16:55:39
patterms.time = new RegExp("^([0-1]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$");
//驗(yàn)證函數(shù)
function verify(str,pat)
{
var thePat;
thePat = patterms[pat];
if(thePat.test(str))
{
return true;
}
else
{
return false;
}
}
//測(cè)試
alert(verify("asidycom@163.com","email")+","+verify("192.168.1.1","ip")+
","+verify("16:55:39","time")+","+verify("2009-07-13","date")+","+verify("192.168","ip"));

 

驗(yàn)證數(shù)字:^[0-9]*$ 

驗(yàn)證n位的數(shù)字:^\d{n}$  

驗(yàn)證至少n位數(shù)字:^\d{n,}$ 

驗(yàn)證m-n位的數(shù)字:^\d{m,n}$ 

驗(yàn)證零和非零開頭的數(shù)字:^(0|[1-9][0-9]*)$ 

驗(yàn)證有兩位小數(shù)的正實(shí)數(shù):^[0-9]+(.[0-9]{2})?$ 

驗(yàn)證有1-3位小數(shù)的正實(shí)數(shù):^[0-9]+(.[0-9]{1,3})?$ 

驗(yàn)證非零的正整數(shù):^\+?[1-9][0-9]*$ 

驗(yàn)證非零的負(fù)整數(shù):^\-[1-9][0-9]*$ 

驗(yàn)證非負(fù)整數(shù)(正整數(shù) + 0) ^\d+$ 

驗(yàn)證非正整數(shù)(負(fù)整數(shù) + 0) ^((-\d+)|(0+))$ 

驗(yàn)證長(zhǎng)度為3的字符:^.{3}$ 

驗(yàn)證由26個(gè)英文字母組成的字符串:^[A-Za-z]+$ 

驗(yàn)證由26個(gè)大寫英文字母組成的字符串:^[A-Z]+$ 

驗(yàn)證由26個(gè)小寫英文字母組成的字符串:^[a-z]+$ 

驗(yàn)證由數(shù)字和26個(gè)英文字母組成的字符串:^[A-Za-z0-9]+$ 

驗(yàn)證由數(shù)字、26個(gè)英文字母或者下劃線組成的字符串:^\w+$ 

驗(yàn)證用戶名或昵稱經(jīng)常用到: ^[\u4e00-\u9fa5A-Za-z0-9-_]*$  只能中英文百宇,數(shù)字考廉,下劃線,減號(hào)

驗(yàn)證用戶密碼:^[a-zA-Z]\w{5,17}$ 正確格式為:以字母開頭携御,長(zhǎng)度在6-18之間昌粤,只能包含字符、數(shù)字和下劃線啄刹。 

驗(yàn)證是否含有 ^%&',;=?$\" 等字符:[^%&',;=?$\x22]+ 

驗(yàn)證漢字:^[\u4e00-\u9fa5],{0,}$ 

驗(yàn)證Email地址:^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$ 

驗(yàn)證InternetURL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ 涮坐;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$ 

驗(yàn)證電話號(hào)碼:^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$:--正確格式為:XXXX-XXXXXXX,XXXX-XXXXXXXX誓军,XXX-XXXXXXX袱讹,XXX-XXXXXXXX,XXXXXXX昵时,XXXXXXXX捷雕。 

驗(yàn)證身份證號(hào)(15位或18位數(shù)字):^\d{15}|\d{}18$ 

驗(yàn)證一年的12個(gè)月:^(0?[1-9]|1[0-2])$ 正確格式為:“01”-“09”和“1”“12” 

驗(yàn)證一個(gè)月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$ 正確格式為:01、09和1壹甥、31非区。 

整數(shù):^-?\d+$ 

非負(fù)浮點(diǎn)數(shù)(正浮點(diǎn)數(shù) + 0):^\d+(\.\d+)?$ 

正浮點(diǎn)數(shù) ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$ 

非正浮點(diǎn)數(shù)(負(fù)浮點(diǎn)數(shù) + 0) ^((-\d+(\.\d+)?)|(0+(\.0+)?))$ 

負(fù)浮點(diǎn)數(shù) ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$ 

浮點(diǎn)數(shù) ^(-?\d+)(\.\d+)?$
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市盹廷,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌久橙,老刑警劉巖俄占,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異淆衷,居然都是意外死亡缸榄,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門祝拯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來甚带,“玉大人,你說我怎么就攤上這事佳头∮ス螅” “怎么了?”我有些...
    開封第一講書人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵康嘉,是天一觀的道長(zhǎng)碉输。 經(jīng)常有香客問我,道長(zhǎng)亭珍,這世上最難降的妖魔是什么敷钾? 我笑而不...
    開封第一講書人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任枝哄,我火速辦了婚禮,結(jié)果婚禮上阻荒,老公的妹妹穿的比我還像新娘挠锥。我一直安慰自己,他們只是感情好侨赡,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開白布蓖租。 她就那樣靜靜地躺著,像睡著了一般辆毡。 火紅的嫁衣襯著肌膚如雪菜秦。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,125評(píng)論 1 297
  • 那天舶掖,我揣著相機(jī)與錄音球昨,去河邊找鬼。 笑死眨攘,一個(gè)胖子當(dāng)著我的面吹牛主慰,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播鲫售,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼共螺,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了情竹?” 一聲冷哼從身側(cè)響起藐不,我...
    開封第一講書人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎秦效,沒想到半個(gè)月后雏蛮,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡阱州,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年挑秉,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片苔货。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡犀概,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出夜惭,到底是詐尸還是另有隱情姻灶,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布滥嘴,位于F島的核電站木蹬,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜镊叁,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一尘颓、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧晦譬,春花似錦疤苹、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至像樊,卻和暖如春尤莺,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背生棍。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來泰國打工颤霎, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人涂滴。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓友酱,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國和親柔纵。 傳聞我的和親對(duì)象是個(gè)殘疾皇子缔杉,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容