title: Age-verifying regex that should reject 3-digit numbers that begin with zero returning something strange
body: <p>I'm attempting to write a piece of regex code that verifies an age that has 1,2, or 3 digits for a simple form.  If it has 3 digits, the leading digit must be a 1, and the leading digit is never 0.</p>
  
  <p>What I have so far:</p>
  
  <p><code>/^1[0-9][0-9]$|^[0-9][0-9]$|^[0-9]$/</code></p>
  
  <p>An example of this odd behavior:</p>
  
  <pre><code>&gt; myRe = /^1[0-9][0-9]$|^[0-9][0-9]$/;
  &gt; myRe.exec(023);
  ["19"]
  &gt; myRe.exec(052);
  ["42"]
  </code></pre>