5/14/2012

Convert chữ tiếng việt có dấu thành không dấu C#

Hàm dùng để convert chữ tiếng việt có dấu thành chữ tiếng việt không dấu.

public static string ConvertVN(string chucodau)
    {
        const string FindText = "áàảãạâấầẩẫậăắằẳẵặđéèẻẽẹêếềểễệíìỉĩịóòỏõọôốồổỗộơớờởỡợúùủũụưứừửữựýỳỷỹỵÁÀẢÃẠÂẤẦẨẪẬĂẮẰẲẴẶĐÉÈẺẼẸÊẾỀỂỄỆÍÌỈĨỊÓÒỎÕỌÔỐỒỔỖỘƠỚỜỞỠỢÚÙỦŨỤƯỨỪỬỮỰÝỲỶỸỴ";
        const string ReplText = "aaaaaaaaaaaaaaaaadeeeeeeeeeeeiiiiiooooooooooooooooouuuuuuuuuuuyyyyyAAAAAAAAAAAAAAAAADEEEEEEEEEEEIIIIIOOOOOOOOOOOOOOOOOUUUUUUUUUUUYYYYY";
        int index = -1;
        char[] arrChar = FindText.ToCharArray();
        while ((index = chucodau.IndexOfAny(arrChar)) != -1)
        {
            int index2 = FindText.IndexOf(chucodau[index]);
            chucodau = chucodau.Replace(chucodau[index], ReplText[index2]);
        }
        return chucodau;
    } 

Categories:
If You Enjoyed This Post Please Take 5 Seconds To Share It.

3 comments:

Hàm này có tối ưu chưa? IndexOf nó có dò lại từ đầu? Hàm replace nó có dò lại từ đầu lần nữa không?

Hãy test thử và cảm nhận, sau đó để lại bình luận góp ý, đừng hỏi chung chung vậy bạn

Hàm này convert ko được chuẩn. Sai khi convert chuỗi: "Tổng giá bán căn hộ không thay đổi theo 2 cách tính diện tích"

Post a Comment

 
  • Followers