什么是正则表达式,我可以用来防止文本框接受电子邮件地址?正则表达式,以防止文本框接受电子邮件地址
1
A
回答
4
Regex emailregex = new Regex("([0-9a-zA-Z]([-\.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})");
String s = "[email protected]";
Match m = emailregex.Match(s);
if (!m.Success) {
//Not an email address
}
但是,要非常警告其他人比你更聪明,我还没有找到完美的电子邮件正则表达式。如果你想要一些防弹的话,那就远离你目前的做法吧。
4
只需使用一个电子邮件地址的正则表达式,并检查没有匹配。
2
阅读How to Find or Validate an Email Address然后检查没有匹配或否定表达式。
1
它应该是这样的:
Regex emailRegex = new Regex(@"([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9] {1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})");
Match m = emailRegex.Match(this.emailAddress);
if (!m.Success) {
MessageBox.Show("Email address is not correct");
} else {
Application.Exit();
}
'[^ @] +'将不匹配的现代化的电子邮件地址。 – 2011-02-02 13:39:39
良好的验证不会拒绝,但指定允许的内容。您的文字是否包含“@”? – 2011-02-02 13:41:01
是文本不能包含'@' – Hiyasat 2011-02-02 13:42:51