2012-10-04 106 views
1

我使用jQuery的電子郵件正則表達式驗證如下:jQuery的電子郵件正則表達式驗證

@「^((([AZ] | \ d | [#\ $%&「* + -/=! \ \^_ {\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_?{\ |}〜] | [\ u00A0- \ uD7FF \ uF900- \ uFDCF \ uFDF0- \ uFFEF])+))|((\ X22)((((\ X20 | \ X09 )(\ X0D \ X0A))(\ X20 |?\ X09)+)((\ x01- \ X08 \ X0B \ X0C \ x0e- \ X1F \ 0x7F部分] | \ X21 | [\ x23- \ x5b ] | [\ x5d- \ x7e] | [\ u00A0- \ uD7FF \ uF900- \ uFDCF \ uFDF0- \ uFFEF])|(\([\ x01- \ X09 \ X0B \ X0C \ x0d- \ 0x7F部分] | [ \ u00A0- \ uD7FF \ uF900- \ uFDCF \ uFDF0- \ uFFEF]))))(((\ X20 | \ X09)(\ X0D \ X0A))(\ X20 |?\ X09)+)( \ X22)))@((([AZ] | \ d | [\ u00A0- \ uD7FF \ uF900- \ uFDCF \ uFDF0- \ uFFEF])|(([AZ] | \ d | [\ u00A0- \ uD7FF \ uF900- \ uFDCF \ uFDF0- \ uFFEF]) ([AZ] | \ d | - | | _ |〜| [\ u00A0- \ uD7FF \ uF900- \ uFDCF \ uFDF0- \ uFFEF])*([AZ] | \ d | [\ u00A0- \ uD7FF \ uF900- \ uFDCF \ uFDF0- \ uFFEF]))))+(([AZ] |。[\ u00A0- \ uD7FF \ uF900- \ uFDCF \ uFDF0- \ uFFEF])|(([AZ] | [\ u00A0 - \ uD7FF \ uF900- \ uFDCF \ uFDF0- \ uFFEF])([AZ] | \ d | - | | _ |〜| [\ u00A0- \ uD7FF \ uF900- \ uFDCF \ uFDF0- \ uFFEF])* (即[az] | [\ u00A0- \ uD7FF \ uF900- \ uFDCF \ uFDF0- \ uFFEF])))$」

不知道爲什麼它不允許大寫?如果電子郵件地址不應包含任何大寫字母或任何錯誤在這裏。

+1

這是一個醜陋的正則表達式,你應該看看html5和jQuery表單驗證插件,如果你想要更好的語法。 – nikhil

回答

3

無處不在,你有[a-z]字符類的出現時只需將它變成[a-zA-Z]

(或在您的正則表達式指定不區分大小寫標誌/修改i

+0

使用'i'標誌可能是在這種情況下,最少痛苦的方法。 – skunkfrukt

+0

是的,的確標誌是簡單的解決方案 – fcalderan

+0

謝謝,但不知道爲什麼jQuery的只是驗證小寫EAMIL地址? – patricgh

相關問題