C# c中电子邮件地址的正则表达式验证程序#
我需要检查我的aspx页面标记中的电子邮件地址是否正确 可能的电子邮件地址是: 姓名(AndAnyNumber)。姓氏(AndAnyNumber)@march.com 我已经尝试了这个正则表达式验证器:C# c中电子邮件地址的正则表达式验证程序#,c#,regex,email,C#,Regex,Email,我需要检查我的aspx页面标记中的电子邮件地址是否正确 可能的电子邮件地址是: 姓名(AndAnyNumber)。姓氏(AndAnyNumber)@march.com 我已经尝试了这个正则表达式验证器: <asp:RegularExpressionValidator ID="retxtEmail" runat="server" ControlToValidate="txtEmail" ErrorMessage="Not valid" Text="Not valid
<asp:RegularExpressionValidator ID="retxtEmail" runat="server"
ControlToValidate="txtEmail"
ErrorMessage="Not valid" Text="Not valid" Display="Dynamic"
ValidationExpression="^([a-z][a-z0-9]*\\.[a-z][a-z0-9]*@march\\.com)$"
SetFocusOnError="true" EnableClientScript="true"></asp:RegularExpressionValidator>
如果您成功,因为对于电子邮件地址:
汤姆。shepard2@march.com
报税表是无效的,为什么
你能帮我解决这个问题吗
提前感谢。您的
regex
有问题。请用以下内容替换您的regex
:
^([a-zA-Z]+[0-9]+\.[a-zA-Z0-9]+@march\.com)$
如果数字不是强制性的,请将
[0-9]+
替换为[0-9]*
您的正则表达式中存在问题。请将正则表达式替换为以下内容:
^([a-zA-Z]+[0-9]+\.[a-zA-Z0-9]+@march\.com)$
如果数字不是强制性的,则将[0-9]+
替换为[0-9]*
此正则表达式已通过使用正则表达式Coach(编写正则表达式的一个很好的免费工具)进行测试
问题是:
使用
- 不需要捕捉括号
- 目前区分大小写。电子邮件地址往往不是李>
- 双反斜杠-这是导致我出现问题的原因,尽管这可能是ASP.NET的问题
此正则表达式已通过使用正则表达式Coach(编写正则表达式的一个很好的免费工具)进行测试
问题是:
使用
- 不需要捕捉括号
- 目前区分大小写。电子邮件地址往往不是李>
- 双反斜杠-这是导致我出现问题的原因,尽管这可能是ASP.NET的问题
Hm,好奇,试试
“^([a-z][a-z0-9]*[.][a-z][a-z0-9]*@march[.]com)$”
我猜这是由于双转义反斜杠造成的。您确实需要转义
,但只需使用单斜杠即可。如果这仍然不起作用(例如,如果asp.net为您添加了第二个斜杠),请尝试上面的@WiktorStribiżew建议,使用[.]
.Hm,好奇的是,尝试“^([a-z][a-z0-9]*[.][a-z][a-z0-9]*@march[.]com)$”
我想这是由于双反斜杠转义造成的。您确实需要转义
,但只需使用单斜杠即可。如果这仍然不起作用(例如,如果asp.net为您添加了第二个斜杠),请尝试上面的@WiktorStribiżew建议,使用[.]
。然后他的电子邮件可以以一个数字开头,而他并不想要这个数字([a-zA-Z]+[0-9]+.[a-zA-Z0-9]+@march.com)$
regex现在允许用户部分和域部分不带点。此模式与提供的示例不匹配-不确定其被接受的原因?然后他的电子邮件可以以一个数字开头,他不想要这个数字([a-zA-Z]+[0-9]+.[a-zA-Z0-9]+@march.com)$
regex现在允许用户部分和域部分不带点。此模式与提供的示例不匹配-不确定为什么接受此模式?您的工具一定有问题。regex不起作用。不,SO上的格式是字符。需要将其更改为代码snippit,以便包含所有字符。代码现在已修复。您的工具一定有问题。正则表达式不起作用。不,SO上的格式正在吞噬字符。需要将其更改为代码snippit,以便包含所有字符。代码现在已修复。