一般都是用<正則表達式>來判斷.什么是正則表達式?
創(chuàng)新互聯(lián)長期為近千家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為象州企業(yè)提供專業(yè)的網(wǎng)站制作、成都網(wǎng)站制作,象州網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。就是用如下特殊符號或其組合來代表某個字符(以下符號可以通配所有字符)
符號 說明 . 代表除換行符以外的任意字符 \\w 代表字母或數(shù)字或下劃線或漢字 \\s 代表任意的空白符 \\d 代表數(shù)字 \\b 代表單詞的開始或結(jié)束 ^ 代表字符串的開始 $ 代表字符串的結(jié)束
如abc120可以用這樣的正則表達式表示: \\w\\w\\w\\d\\d\\d, 或者 \\w\\w\\w\\w\\w\\w 或者 ...... (六個英文句點) 等等...
用如下符號來代表某個可能字符的集合
[ ]
如電話號碼的第n位,一定屬于這個集合>[0-9] ,即0到9;某個外國人名字的第n個字母,一定屬于這個集合 [a-z A-Z],即26個英文字母的大小寫組成的集合用如下符號來代表 上面所表達的某個字符或某個集合的重復(fù):
符號 說明 * 重復(fù)零次或更多次 + 重復(fù)一次或更多次 ? 重復(fù)零次或一次 {n} 重復(fù)n次 {n,} 重復(fù)n次或更多次 {n,m} 重復(fù)n到m次
然后剩下的符號基本就是原意了,如 郵箱符號 @ 就表示郵箱符號,等號 = 就表示等號, 橫杠 - 就表示橫杠等
舉個例子吧,給你解釋一下下面這個判斷郵箱格式的正則表達式的意思(下面看不懂的可以查看上面給的各個符號的意義):
^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+\\\\.[a-zA-Z0-9_-]+$
把上面的表達式分段,并介紹每個字段的意思 1 ^ ;2 [a-zA-Z0-9_-]+ ;3 @ ; 4 [a-zA-Z0-9_-]+ ; 5 \\\\. ;6 [a-zA-Z0-9_-]+ ;7 $^ 代表一切判斷從此處開始 (段1)[a-zA-Z0-9_-] 方括號表示集合 這個方括內(nèi)的意思是告訴執(zhí)行程序的那貨(其實就是電腦):嘿,編譯器老兄,你幫我看看這個郵箱地址的第一個字符,只要它屬于集合[a,z],或者集合[A,Z],或者集合[0,9],或者集合{”_“ , ”-“}的話,你就隨時待命,準(zhǔn)備執(zhí)行我下一步的任務(wù);否則,你就可以先下班,別鳥這個郵箱地址了,它的格式肯定是錯的+ 加號表示重復(fù)一次或多次 加號的意思是告訴電腦:嘿,編譯器老兄,你順便幫我看看這個郵箱地址的第二個字符、第三個字符、第四個字符......看看這些字符是不是都屬于同上一條的那些集合(即重復(fù))。如果符合,你就再順便幫我判斷第五個字符是不是也屬于上條那些集合唄...嘿嘿 (段2)編譯器這時候就疑惑且不高興了,它反問我一句:尼瑪,難道讓我一個字符一個字符的一直判斷下去?!我多會才能停呀...這時候我告訴編譯器,嗯,記住,當(dāng)你看到一個字符長得像這個樣子的時候,你就可以先停一停了..."@" 艾特符 (段3)編譯器很高興,于是它就根據(jù)給定的郵箱地址,開始一個字符一個字符地判斷起來,直到它順利地看見了”@“(艾特符),這時編譯器喜上眉梢,只見他長出一口氣,剛準(zhǔn)備說:我先歇一會...這時我告訴編譯器:不行不行,工作還沒完成呢,你繼續(xù)幫我判斷跟在”@“符號后的那些字符,看看他們是不是屬于第一條的那些集合( 段4)...編譯器撅著嘴繼續(xù)判斷起來,然后他一邊判斷一邊又問:那我多會才停下來呢?我告訴編譯器,當(dāng)你看見這個字符的時候就先停下來”.“ 英文句號 (段5)編譯器于是繼續(xù)判斷著,奇了怪了這郵箱地址格式一路正確,于是它走到了英文句號跟前(”.“)停下了,看上去有點想罷工的樣子了于是我趕緊說道,老兄,最后一件工作了,真的最后一件了!把跟在英文句號(”.“)之后的那些字符也依次判斷一下吧,只要他們?nèi)詫儆诘谝粭l所列的那些集合,你就可以停下了,下班回去嘿咻了... (段6)編譯器此時面露喜色,跟著開始判斷起英文句號(".")之后的那些字符來,但是他突然臉一黑,想到:尼瑪,要是這個字符有100多個,1000多個,難道我就一直這么判斷下去,我不走火入魔了才怪呢!于是他對我說:要是有1000多個字符,難道就讓我一個一個判斷下去,我根本下不了班了呀!我說:老兄,不用著急。首先,你不會遇到這么長的字符,其次,記住,只要你看見下面這個字符,就可以徹底下班走人了。這個字符就是:”$” 刀勒符,它的意思就是告訴編譯器,判斷條件已經(jīng)到結(jié)尾,一切判斷到此為止 (段7)
下面舉一個例子:
var sletter=document.f1.letter.value; //獲取表單對象的值 if(sletter!=""){ var reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\\.[a-zA-Z0-9_-]{2,3}){1,2})$/; isok=reg.test(sletter); } if (!isok) { alert("郵箱格式不正確!"); return false; }
更多推薦:《js教程》
本文名稱:如何判斷用戶輸入的郵箱格式是否正確?
本文路徑:http://muchs.cn/article12/cghcdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、手機網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、外貿(mào)建站、網(wǎng)站內(nèi)鏈、網(wǎng)站設(shè)計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)