表單驗證

使用正則表達式驗證

下面是一些例子,讓你對它們的工作原理有個基本的了解:

a?— 匹配一個字符a?(不能匹配?b,?aa等等.)

abc?— 匹配?a, 其次?b, 最后 by?c.

a*?— 匹配字符?a, 0個或者多個 (+?代表至少匹配一個或者多個).

[^a]?— 匹配不以字符?a開頭的.

a|b?— 匹配一個字符?a?或者?b.

[abc]?— 匹配?abc范圍中的任意一個.

[^abc]?— 匹配不是?abc這三個字符的.

[a-z]?— 匹配字符范圍?a-z且全部小寫? (你可以使用?[A-z]?涵蓋大小寫, 或?[A-Z]?來限制必須大寫).

a.c?— 匹配字符?a,中間匹配任意一個字符,最后匹配字符?c.

a{5}?— 匹配字符?a五次.

a{5,7}?— 匹配字符?a五到七次,不能多或者少.

你也可以在這些表達式中使用數(shù)字和其他字符, 例如:

[ |-]?— 匹配一個空格或者虛線.

[0-9] — 匹配數(shù)字范圍0~9.

你可以任意地組合這些,你可以任意指定不同的部分:

[Ll].*k?— 匹配一個大寫L或者小寫的l, 之后匹配一個或多個任意類型的字符, 最后匹配一個小寫字母 k.

[A-Z][A-z|-|']+?— 一個大寫字母后面跟著匹配一個大小寫字母或者中劃線或者撇號. 這個可以用于校驗英語會話中城市或城鎮(zhèn)名, 但這需要首字母以大寫開頭,不包括其他字符(你可以添加額外的表達式來做到). 就像 from the UK include Manchester, Ashton-under-lyne, and Bishop's Stortford. 你可以在表達式最后寫上?[A-z-' ]+?(沒有管道字符), 但是不好閱讀.

[0-9]{3}[ |-][0-9]{3}[ |-][0-9]{4}?— 簡單的匹配一個美國內的電話號碼 — 三個數(shù)字 0-9, 后面跟著一個空格或者中劃線, 之后匹配三個數(shù)字 0-9, 再跟著一個空格或者中劃線, 最后跟著四個數(shù)字 0-9. 但實際情況可能更加復雜,因為有些人會給號碼加上括號什么的,這里的表達式只是用來做一個簡單的演示.

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容