我正在尝试验证文本字段,用户必须按以下格式输入电子邮件地址:firtsname.lastname@companyname.com
1)必须以.com
结尾。电子邮件地址中的任何地方都不允许有号码。例如,有效的电子邮件地址加密:fredric.william@gmail.com
2)无效的电子邮件:fredricwilliam@cool.com
3)无效的电子邮件:fredric19.william@cool.com
我正在尝试的代码:
<asp:RegularExpressionValidator ID="RegularExpressionValidatorEmail" runat="server"
ErrorMessage="Invalid Email !" ForeColor="Red"
ControlToValidate="emailtxt" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*">*</asp:RegularExpressionValidator>
<br />
答案 0 :(得分:0)
您可以查看Microsoft的详细说明here。 让我给你两个样本正则表达式,这样你就可以自己创建或修改下面的。
表达式1:
(([\ w - ] +。)+ [\ w - ] + |([a-zA-Z] {1} | [\ w - ] {2,}))@
匹配电子邮件地址的用户名部分。该表达式部分匹配如下:
([\w-]+\.)+[\w-]+)
- 匹配点分隔的用户名组(即John.Connor@test.maildomain.com的John.Connor)。
规则:应该至少有两个点分隔的组,每组应至少包含一个字母数字字符或' - ','_'字符和'。'最后的字符,除了@ -sign组的最右边。
或([a-zA-Z]{1}|[\w-]{2,})
- 匹配单个(不带'。'字符)用户名(即Max-White@test.maildomain.com的Max-White)。
规则:如果用户名部分只包含一个字符,则应该是单词字符(a到z或A到Z),或者应该至少有两个字母数字,下划线或减号字符。
@
- 匹配电子邮件地址的@ -sign。
表达式2:
(([0-1] [0-9] {1,2} |?25 [0-5] | 2 [0-4] [0-9])([0-1] [? 0-9] {1,2} | 25 [0-5] | 2 [0-4] [0-9])。 ([0-1] [0-9] {1,2} |?25 [0-5] | 2 [0-4] [0-9])。?([0-1] [0-9] {1,2} | 25 [0-5] | 2 [0-4] [0-9])){1}
匹配电子邮件地址的主机部分,如果电子邮件地址中的主机表示为IP地址。如您所见,此表达式部分具有四个相同的重复组,每个重复组用于分别匹配IP地址的第一个到第四个八位字节。整个表达部分匹配如下:
([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\.
- 匹配电子邮件字符串中IP地址的前三个八位字节之一(即John.Connor@195.250.101.219的195.250.101。)。
规则:可选的第一个字符'0'到'1'和可选的第二个字符'0'到'9'强制第三个字符'0'到'9'或强制性的第一个字符'25'和强制的第三个字符'0'到'5 '或强制性第一个字符'2'和强制性第二个字符'0'到'4'和强制性第三个字符'0'到'9'和强制性'。'八位组末尾的字符。
([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])
- 匹配电子邮件字符串中IP地址的最后四个八位字节(即John.Connor@195.250.101.219的219)。
规则:与前三个八位组相同,但“。”除外。最后的角色。
{1}
- 匹配一个字符串,该字符串在@ -sign后面只包含一个“四个八位字节”组。