title: Regex for Passport Number
body: <p>I am trying to implement regex validation for passport number. </p>
  
  <p>My requirement is</p>
  
  <ol>
  <li>Length should be minimum 3 characters to a maximum of 20 characters.</li>
  <li>Should not be only 0's </li>
  </ol>
  
  <p>I tried with the below regular expression</p>
  
  <p><strong><em>^(?!0{3,20})[a-zA-Z0-9]{3,20}$</em></strong></p>
  
  <p>This seems to work for most of the cases, but incase my text contains 3 or more leading zeros, it seems to fail. Such as '00000001'.</p>
  
  <p>Example Matches</p>
  
  <ul>
  <li>101AE24 - Working as expected</li>
  <li>00 - Not working as expected</li>
  <li>01234 - Working as expected</li>
  <li><strong>00001 - Not working (But it should also be match)</strong></li>
  </ul>
  
  <p>Any help would be much appreciated.</p>