AngExJS表单验证,RegEx无效

时间:2015-11-12 01:43:04

标签: angularjs regex

我正在尝试使用RegEx验证电话号码。以下是我的要求。 10位数字母/数字,其中Alpha CHAR位于第4位(不包括连字符)。例如:586R410056

NNN ANN NNNN
(NNN) ANN NNNN
NNN-ANN-NNNN
(NNN) ANN-NNNN
1NNN ANN NNNN
1(NNN) ANN NNNN
1NNN-ANN-NNNN
1(NNN) ANN-NNNN
NNN.ANN.NNNN
(NNN-ANN-NNNN)

我想出了以下RegEx,但它没有以AngularJS形式工作。正则表达式:

^[1]?\s?\(?\d{3}\)?[-.\s]?[a-zA-Z]{1}\d{2}[-.\s]?\d{4}\)?$

以下是plunker

1 个答案:

答案 0 :(得分:1)

使用此代码:: DEMO

  <form class="form-inline container-fluid" name="userForm" novalidate>
    <div class="form-group">
      <input type="text" class="form-control" ng-model="addBTNWTNModalCotroller.selectedItem.lecBtn" ng-pattern="/^1?\s?\(?\d{3}\)?[-.\s]?[a-zA-Z]\d{2}[-.\s]?\d{4}\)?$/" ng-change="addBTNWTNModalCotroller.onBtnFieldChange()" name="btn" required style="width: 90%;"
      placeholder="Enter here..."> 
      <div ng-show="userForm.btn.$touched">
        <span class="error-text" ng-show="userForm.btn.$error.required">
                  <span class="icon-ICON_WARNING"></span> BTN is required.
        </span>
        <span class="error-text" ng-show="userForm.btn.$error.pattern">
                   <span class="icon-ICON_WARNING"></span> Please enter valid BTN.
        </span>
      </div>
    </div>
  </form>