溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

用戶輸入的郵箱格式是怎么判斷正確的

發(fā)布時間:2020-07-16 09:30:07 來源:億速云 閱讀:281 作者:Leah 欄目:web開發(fā)

這期內(nèi)容當中小編將會給大家?guī)碛嘘P(guān)用戶輸入的郵箱格式是怎么判斷正確的,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

就是用如下特殊符號其組合來代表某個字符(以下符號可以通配所有字符)

符號	說明
.	代表除換行符以外的任意字符
\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í)行我下一步的任務(wù);否則,你就可以先下班,別鳥這個郵箱地址了,它的格式肯定是錯的
  • + 加號表示重復(fù)一次或多次 加號的意思是告訴電腦:嘿,編譯器老兄,你順便幫我看看這個郵箱地址的第二個字符、第三個字符、第四個字符......看看這些字符是不是都屬于同上一條的那些集合(即重復(fù))。如果符合,你就再順便幫我判斷第五個字符是不是也屬于上條那些集合唄...嘿嘿 (段2)
  • 編譯器這時候就疑惑且不高興了,它反問我一句:尼瑪,難道讓我一個字符一個字符的一直判斷下去?!我多會才能停呀...
  • 這時候我告訴編譯器,嗯,記住,當你看到一個字符長得像這個樣子的時候,你就可以先停一停了...
  • "@" 艾特符 (段3)
  • 編譯器很高興,于是它就根據(jù)給定的郵箱地址,開始一個字符一個字符地判斷起來,直到它順利地看見了”@“(艾特符),這時編譯器喜上眉梢,只見他長出一口氣,剛準備說:我先歇一會...
  • 這時我告訴編譯器:不行不行,工作還沒完成呢,你繼續(xù)幫我判斷跟在”@“符號后的那些字符,看看他們是不是屬于第一條的那些集合( 段4)...
  • 編譯器撅著嘴繼續(xù)判斷起來,然后他一邊判斷一邊又問:那我多會才停下來呢?
  • 我告訴編譯器,當你看見這個字符的時候就先停下來
  • ”.“ 英文句號 (段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;
       }

上述就是小編為大家分享的用戶輸入的郵箱格式是怎么判斷正確的了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI