【发布时间】:2012-04-17 22:31:02
【问题描述】:
Regex(@"@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,4}$", RegexOptions.Compiled);
使用上述方法,我只想传递 @gmail.com、@xyz.edu、@co.uk 等值... 但我发现像 abc@gmail.com(有效的电子邮件 ID)这样的值也会通过。
我应该修改什么?
【问题讨论】:
Regex(@"@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,4}$", RegexOptions.Compiled);
使用上述方法,我只想传递 @gmail.com、@xyz.edu、@co.uk 等值... 但我发现像 abc@gmail.com(有效的电子邮件 ID)这样的值也会通过。
我应该修改什么?
【问题讨论】:
在@前面放一个^。
对了,到底为什么{2,4}。 .travel 也是一个有效的顶级域。
【讨论】:
域不能以- 字符开头。
^(?:[a-zA-Z0-9][a-zA-Z0-9-]*\.)+[a-zA-Z]{2,6}$
Uri uri = new Uri("http://www.cnn.com/some_link/document.htm");
string url = uri.Host.ToString();
【讨论】: