title: case insensitive regex
body: <p>I want to validate an email address with Regex in C#.</p>
  
  <p>I'm using this pattern: </p>
  
  <pre><code>^[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$
  </code></pre>
  
  <p>This pattern only matches upper case letters. For example:</p>
  
  <p>"example@gmail.com" -->  returns false.
  "EXAMPLE@GMAIL.COM" --> returns true.</p>
  
  <p>I obviously would like that the first example will also return true.</p>
  
  <p>NOTE: I DON'T want to use the <code>RegexOptions.IgnoreCase</code> flag.</p>
  
  <p>I would like to change the pattern itself to match the first example. I think that I can add a "/i" in the end of the pattern or something like this but it doesn't seems to work.
  I prefer not to use the "?i" in the beginning as well.</p>
  
  <p>How can i achieve this? </p>
  
  <p>(If you could rewrite the whole pattern for me, it would be great!).</p>
  
  <p>Thanks.</p>