我对正则表达式并不太陌生,但我只是认为我在阅读和理解它们方面比自己编写它们要好得多。无法让这个工作。
电子邮件:密码
基本上,它需要验证一个电子邮件地址和一个任意长度的密码,用冒号隔开,周围有或没有空格。
密码绝对可以包含任何字符,包括冒号。电子邮件不能包含冒号,但据我所知,它们确实不能包含冒号。
真的:
- Em@il.com:密码
- Em@il.com : p@55w:rd
- Em@il.co.uk :p@$ 字
- Em@il.com: 密码
错误的:
- Nomail.com:密码
- 名称@ailcom:密码
- 无邮箱:密码
- E:m@il.com:密码
谢谢!
非常感谢FJ!在他的帮助以及我通常使用的Markus Sipilä的电子邮件验证的帮助下,它变成了这样:
^[a-z0-9,!#\$%&'\*\+/=\?\^_`\{\|}~-]+(\.[a-z0-9,!#\$%&'\*\+/=\?\^_`\{\|}~-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.([a-z]{2,})[ ]?:.*$
当然,当将 FJ 的代码 ([ ]?:.*) 添加到任何电子邮件验证字符串的末尾时,请记住,您可能必须摆脱行尾弓箭手。向其中添加“可选”部分,这意味着它可以留空 (^$) 或 (|) 跟随字符串,使得:
(^$|^[a-z0-9,!#\$%&'\*\+/=\?\^_`\{\|}~-]+(\.[a-z0-9,!#\$%&'\*\+/=\?\^_`\{\|}~-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.([a-z]{2,})[ ]?:.*$)