我正在制作一些必须完全unicode的网站。 数据库等正在工作,我只有一些小的逻辑错误。 如果字段有效,我用ajax测试我的注册表单,在电子邮件字段中我用正则表达式检查。
但是,如果用户拥有像日本人@日人日本人.com这样的电子邮件地址,那么它就不会出现问题。
- 这种类型的邮件地址存在吗?
电子邮件地址总是这样吗? (a-z A-Z 0-9) @ (a-z A-Z 0-9)。(a-z A-Z 0-9)
我正在制作一些必须完全unicode的网站。 数据库等正在工作,我只有一些小的逻辑错误。 如果字段有效,我用ajax测试我的注册表单,在电子邮件字段中我用正则表达式检查。
但是,如果用户拥有像日本人@日人日本人.com这样的电子邮件地址,那么它就不会出现问题。
电子邮件地址总是这样吗? (a-z A-Z 0-9) @ (a-z A-Z 0-9)。(a-z A-Z 0-9)
按照 RFC 5322 (“Internet邮件格式”),第3.4.1节(“地址规范”),您不能使用非US-ASCII字符,例如您列出的字符。但是,...等人物
! # $ % & ' * + - / = ? ^ _ { | } ~
......只要连续只有一个,就是合法的,也可以是句号/句号。
有关更多信息,请参阅上面的RFC和确实 关于电子邮件地址的维基百科文章,特别是“语法”部分。
UPDATE
还有一个更新的,尽管是实验性的, RFC 5336 (现在已经过时了 RFC6531)处理包含UTF-8字符等的现在合法的国际域名。
你一定是 非常 当您尝试匹配/验证正则表达式上的电子邮件地址时要小心。在某些情况下,您拒绝有效的电子邮件地址。基本上它:
给我看一个正则表达式,我给你看一个不匹配的电子邮件。
因此,如果我查看电子邮件地址,我会使用非常简单的正则表达式 .+@.+(\..+)*
(用户部分任何东西,主机部分至少有一个点)。任何其他因素都会导致误报和漏报。
最好不要匹配电子邮件地址(只检查像“@”这样的琐碎的东西),而是发送选择加入电子邮件。
通常地址在表格中
[_a-zA-Z0-9]+(\.[_a-zA-Z0-9]+)*@[_a-zA-Z0-9]+(\.[_a-zA-Z0-9]+)+
换句话说 \w+(\.\w+)*@\w+(\.\w+)+
。此网站还提供有关电子邮件地址模式的有用信息:
似乎没有很多人提到存在问题。在我之前的人已经给出了美丽的正则表达式,所以我不会重复这些。
我不太了解日本方面,但至少作为一个使用中文用于主要互联网浏览语言的母语人士,我从未见过中文的电子邮件地址。曾经有一段时间有汉字的域名很受欢迎。但我相信这是在DNS方面完成的,这是一个商业泡沫。现在你很少见到具有中文字符的域名了。电子邮件地址也是如此。