Ví dụ có 1 một tiêu đề bài viết “Tìm hiểu về ngôn ngữ lập trình C” và bạn cần tạo một slug “tim-hieu-ve-ngon-ngu-lap-trinh-c”. Mục đích của việc này là dùng nó để tạo thành một URL thân thiện cho người dùng và các công cụ tìm kiếm.

Code tạo slug trong C#:

using System;
using System.Text;
using System.Text.RegularExpressions;

public class SlugBuilder
{
  public static string GetSlug(string text)
  {
    Regex regex = new Regex("\\p{IsCombiningDiacriticalMarks}+");
    string slug = text.Normalize(NormalizationForm.FormD).Trim().ToLower();
    
    slug = regex.Replace(slug, String.Empty)
      .Replace('\u0111', 'd').Replace('\u0110', 'D')
      .Replace(",", "-").Replace(".", "-").Replace("!", "")
      .Replace("(", "").Replace(")", "").Replace(";", "-")
      .Replace("/", "-").Replace("%", "ptram").Replace("&", "va")
      .Replace("?", "").Replace('"', '-').Replace(' ', '-');
                        
    return slug;
  }
}

Trong đoạn code có sử dụng biểu thức chính quy (Regular Expressions) để xử lý chuỗi. Tìm hiểu thêm về biểu thức chính quy tại đây: Regular Expression Language – Quick Reference

Được gắn thẻ:

,