Search code examples
javascriptangularjsregexangularjs-directiveng-pattern

Using ng-pattern to recognize leading zero in Angular alphanumeric field


How can I recognize a leading zero in an alphanumeric field using ng-pattern in angular?

  <body ng-app>
    <h1>Regex test</h1>
    <form name="myForm">
      <input name="myNumberField" ng-model="myNumber" ng-pattern="REGEX HERE" required/>
      <span ng-show="myForm.myNumberField.$error.pattern">Invalid pattern</span>
    </form>
  </body>

I tried ng-pattern="/(^0[0-9].*$)/" and ng-pattern="/(^0.*$)/"

Here is a plunker: http://plnkr.co/edit/laB3Q7nApuoLT9NYnCGX?p=preview

For example:

Invalid Patterns:

0AHFFB

00AJFH

0038429347

Valid Patterns:

AHFFB

AJFBN

32400342

30292900


Solution

  • ng-pattern="/(^[a-zA-Z1-9][a-zA-Z0-9]*$)/"
    

    Works for me.