title: Is there a  GUID.TryParse() in .NET 3.5?
body: <p><strong>UPDATE</strong></p>
  
  <p>Guid.TryParse is available in .NET 4.0 </p>
  
  <p><strong>END UPDATE</strong></p>
  
  <p>Obviously there is no public GUID.TryParse() in .NET CLR 2.0.</p>
  
  <p>So, I was looking into regular expressions [aka googling around to find one] and each time I found one there was a heated argument in the comments section about RegEx A doesn't work, use RegEx B.  Then someone would write Regex C yadda yadda</p>
  
  <p>So anyway, What I decided to do was this, but I feel bad about it.</p>
  
  <pre><code>public static bool IsGuid (string possibleGuid) {
  
      try {
        Guid gid = new Guid(possibleGuid);
        return true;    
      } catch (Exception ex) {
        return false;
      }
  }
  </code></pre>
  
  <p>Obviously I don't really like this since it's been drilled into me since day one to avoid throwing exceptions if you can defensibly code around it.</p>
  
  <p>Does anyone know why there is no public Guid.TryParse() in the .NET Framework?</p>
  
  <p>Does anyone have a real Regular Expression that will work for all GUIDs? </p>