Javascript ng模式不适用于特定电子邮件地址?
我想使用Javascript ng模式不适用于特定电子邮件地址?,javascript,angularjs,regex,Javascript,Angularjs,Regex,我想使用ng模式验证特定域电子邮件验证,假设我需要此模式ab123z@domain.com或ab1234@domain.com当用户有输入值时,我必须应用这两个条件。我在下面尝试了emailFromat,但在所有情况下都显示无效?还有更好的办法吗 main.html <div layout="row"> <md-input-container flex="100"> <label>Cc</label> <
ng模式
验证特定域电子邮件验证,假设我需要此模式ab123z@domain.com
或ab1234@domain.com
当用户有输入值时,我必须应用这两个条件。我在下面尝试了emailFromat
,但在所有情况下都显示无效?还有更好的办法吗
main.html
<div layout="row">
<md-input-container flex="100">
<label>Cc</label>
<input type="email" name="email" ng-model="notifyCtrl.cc" ng-list="," ng-pattern="pattern(user.type)">
<div class="help-block" ng-messages="notifyForm.email.$error" ng-show="notifyForm.email.$touched && notifyForm.email.$invalid">
<div ng-if="user.type === 'notify'">
<div ng-message="pattern">
An email name must only contain a-z, A-Z, 0-9, or _ characters.(ie. ab123c@tad.com, ab1234@tad.com
</div>
</div>
</div>
</md-input-container>
</div>
从正则表达式中删除引号。没有必要
为什么会被否决?我也能得到一些评论吗?
/
不是为了逃避,而是为了文字匹配(顺便说一句,这很有效)。然而,这个正则表达式仍然是坏的;它将匹配@
后面的单个字符。(即abc123@a
)。如何使其特定于类似的域ab123z@domain.com“谢谢你,伙计。更新answer@hussain更新了答案。立即检查电子邮件字符模式必须是这两种ab123z@domain.com
或ab1234@domain.com
正如我在问题中提到的,它可行吗?
var emailFormat = "/^[a-z0-9!#$%&'*+/=?^_`{|}~.-]+@+(?: |[a-z0-9-]+\.com|com|[a-z0-9-])$/"
$scope.pattern = function(type){
if(type === 'notify') {
return emailFormat;
}
};
var emailFormat = /^[a-zA-Z]{2}[a-z0-9!#$%&'*+/=?^_`{|}~.-]*[a-zA-Z]{2}@+(?: |[a-z0-9-]+\.com|com|[a-z0-9-])$/
$scope.pattern = function(type){
if(type === 'notify') {
return emailFormat;
}
};