我正在尝试使用angular指令在我的html页面中验证电子邮件地址。
对我来说,有效的电子邮件地址是
hello@mycompany.com
以下正则表达式允许使用以下电子邮件地址
您好@ myCompany的
我可以使用哪种正则表达式也会强制执行电子邮件地址的“.com”部分,这意味着强制执行“。”以及“。”之后的任何事情。
我研究过互联网并使用了不同的列出的正则表达式,但没有一个正在工作
<div class="form-group" ng-class="{ 'has-error': registerUpdateForm.Email.$invalid }">
<label class="col-sm-3 control-label" for="Email">Email Address</label>
<div class="col-sm-9">
<input required type="email" data-ng-model="auth.Email"
data-ng-pattern="^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$"
id="email" name="Email" class="form-control" /> <!--ng-pattern="matchPattern"/>-->
</div>
</div>
答案 0 :(得分:2)
预期值为Regexp
或内联模式,在javascript中看起来像/pattern/
。正则表达式本身看起来很好,所以只需尝试在开头和结尾添加正斜杠:
<input required type="email" data-ng-model="auth.Email"
data-ng-pattern="/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/"
id="email" name="Email" class="form-control" />
答案 1 :(得分:0)
<input type="email">
的{{3}}表示电子邮件地址必须与正则表达式匹配
/^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/
所以这对于像(未经测试的)
这样的事情是一个合理的开始/^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+\.com$/
请注意,如果您想要的不仅仅是&#34; .com&#34;:W3C specification,您就不能再将顶级域名限制为{2,4}个字符了