title: Transform title into dashed URL-friendly string
body: <p>I would like to write a C# method that would transform any title into a URL friendly string, similar to what Stack Overflow does:</p>
  
  <ul>
  <li>replace spaces with dashes</li>
  <li>remove parenthesis</li>
  <li>etc.</li>
  </ul>
  
  <p>I'm thinking of removing Reserved characters as per RFC 3986 standard (from <a href="http://en.wikipedia.org/wiki/Percent-encoding" rel="nofollow noreferrer">Wikipedia</a>) but I don't know if that would be enough? It would make links workable, but does anyone know what other characters are being replaced here at stackoverflow? I don't want to end up with %-s in my URLs...</p>
  
  <h2>Current implementation</h2>
  
  <pre><code>string result = Regex.Replace(value.Trim(), @"[!*'""`();:@&amp;+=$,/\\?%#\[\]&lt;&gt;«»{}_]");
  return Regex.Replace(result.Trim(), @"[\s*[\-–—\s]\s*]", "-");
  </code></pre>
  
  <h2>My questions</h2>
  
  <ol>
  <li>Which characters should I remove?</li>
  <li>Should I limit the maximum length of resulting string?</li>
  <li>Anyone know which rules are applied on titles here on SO?</li>
  </ol>