带有字符限制的电子邮件正则表达式(没有预测)

时间:2011-01-06 13:22:17

标签: asp.net regex validation

我有一个正则表达式:“\ b [A-Za-z0-9 ._% - ] + @ [A-Za-z0-9 .-] +。[A-Za-z] {2,4 } \ b“用于验证ASP.NET中的电子邮件地址。

我希望能够限制6和6之间的字符总数。 100个字符。我正在为IE 6编写代码,那么如何在不使用前瞻的情况下完成这项工作呢?

非常感谢

2 个答案:

答案 0 :(得分:1)

为什么不单独检查长度,而不是试图将其撕成正则表达式?

答案 1 :(得分:1)

给它一个旋转:

这要求用户名介于6到600个字符之间。在不知道域名可能有多长的情况下,我认为如果没有前瞻(或后面),你将无法有效地限制它。我能想到的唯一可能的解决方法是为每个设置任意限制:用户名为300,域名为300。

^(#?[_a-zA-Z0-9+-](\.?[_a-zA-Z0-9+-]{5,599})*)@([a-zA-Z0-9]+(-(?!-)|[a-zA-Z0-9\.])*?[a-zA-Z0-9]+\.([0-9]{1,3}|[a-zA-Z]{2,3}|(aero|arpa|asia|coop|info|jobs|mobi|museum|name|travel)))$