toSlug
public static String toSlug(this string text) { String value = text.Normalize(NormalizationForm.FormD).Trim(); StringBuilder builder = new StringBuilder(); foreach (char c in text.ToCharArray()) if (CharUnicodeInfo.GetUnicodeCategory(c) != UnicodeCategory.NonSpacingMark) builder.Append(c); value = builder.ToString(); byte[] bytes = Encoding.GetEncoding("Cyrillic").GetBytes(text); value = Regex.Replace(Regex.Replace(Encoding.ASCII.GetString(bytes), @"\s{2,}|[^\w]", " ", RegexOptions.ECMAScript).Trim(), @"\s+", "_"); return value.ToLowerInvariant(); }Example:
Console.WriteLine(@"I'm a cute Post Title/""\/".toSlug()); // => i_m_a_cute_post_title
Description
Generate slugs for friendly urls.
Details
- Author: Lucas
- Submitted on: 30-11-2009 18:13:11
- Language: C#
- Type: System.String
- Views: 4353
Double click on the code to select all.