title: Regex Expression using OR and single occurrence
body: <p>I need a regular expression which satisfies the following conditions.</p>
  
  <ol>
  <li>Should start with a alpha-numeric character   </li>
  <li>Special characters allowed are <code>-</code> <code>'</code> and space</li>
  <li>Special characters cannot be at the start or end of the string  </li>
  <li>Special characters cannot occur side by side.  </li>
  <li>Length of string is 20 characters</li>
  <li>Minimum length is 1 character</li>
  </ol>
  
  <p>I am using following regex but missing the fourth point:</p>
  
  <pre><code>^[a-zA-Z0-9] ([-|'] * [a-zA-Z0-9])*${0,20}
  </code></pre>