title: Using regex to verify an input has at least 2 letters, with special and normal characters allowed
body: <p>I need a regular expression which should have at least 2 letters.
  Total length should be between 6 &amp; 50 characters and can as well include these special characters - _ . @</p>
  
  <p>I came up with this line but it still accepts when I have in the input 1 letter and one special character with a minimum of 6 characters in total.
  Where there should be 2 letters minimum for the input to be valid.</p>
  
  <pre><code>^(?=(?:\d*\D){2})[a-zA-Z0-9-_@\\.]{6,50}$
  </code></pre>
  
  <p>I expect it to be valid when I give for example : a12@45b 
  And expect to be invalid when I give for example : a1234@  (this output gives me valid with expression I have now)</p>