C# 如何在C中从越南语字符串中删除Unicode符号#

C# 如何在C中从越南语字符串中删除Unicode符号#,c#,unicode,C#,Unicode,我正在为我在越南的合作伙伴做一个项目,我必须解决越南语问题。 如何删除越南语字符串中的所有Unicode符号 例如:辛卓卡布ạN(大家好)-->新潮cac班 您可以定义包含所有越南语符号的字符串[]越南语名称符号 例如: 然后,定义一个函数来删除输入字符串中的所有越南语符号 例如: 公共静态字符串RemoveSign4VietNameString(字符串str) { 对于(int i=1;i

我正在为我在越南的合作伙伴做一个项目,我必须解决越南语问题。 如何删除越南语字符串中的所有Unicode符号


例如:辛卓卡布ạN(大家好)-->新潮cac班

您可以定义包含所有越南语符号的
字符串[]
越南语名称符号

例如:

然后,定义一个函数来删除输入字符串中的所有越南语符号

例如:

公共静态字符串RemoveSign4VietNameString(字符串str)
{
对于(int i=1;i
您可以定义一个
字符串[]
VietnameseSigns
包含所有越南语符号

例如:

然后,定义一个函数来删除输入字符串中的所有越南语符号

例如:

公共静态字符串RemoveSign4VietNameString(字符串str)
{
对于(int i=1;i
您可以尝试为此使用UTF16。其思想是将字符串转换为UTF16。每个字符将获得两个字节。一个字节是“装饰”,如重音等。另一个应为普通字符。我不是一个C#专家,但不久前我在PHP中也做过类似的工作。谢谢!这是个好主意。但我认为TonyBui的解决方案很好。@Adam不,不是这样的。你从哪里得到的?@AdwardFriday这有点像从英语文本中删除所有元音。Mb y cn stll rd t bt t's nt gng t b s.@roeland我不懂越南语,我用这种方式去掉了其他语言中的发音符号。你说你不能用越南语说?那么,整个问题是否是一个误解?您可以尝试使用UTF16来解决这个问题。其思想是将字符串转换为UTF16。每个字符将获得两个字节。一个字节是“装饰”,如重音等。另一个应为普通字符。我不是一个C#专家,但不久前我在PHP中也做过类似的工作。谢谢!这是个好主意。但我认为TonyBui的解决方案很好。@Adam不,不是这样的。你从哪里得到的?@AdwardFriday这有点像从英语文本中删除所有元音。Mb y cn stll rd t bt t's nt gng t b s.@roeland我不懂越南语,我用这种方式去掉了其他语言中的发音符号。你说你不能用越南语说?那么,整个问题是不是一个误会?谢谢你,从未来开始!从未来开始谢谢你!
private static readonly string[] VietnameseSigns = new string[]
        {

            "aAeEoOuUiIdDyY",

            "áàạảãâấầậẩẫăắằặẳẵ",

            "ÁÀẠẢÃÂẤẦẬẨẪĂẮẰẶẲẴ",

            "éèẹẻẽêếềệểễ",

            "ÉÈẸẺẼÊẾỀỆỂỄ",

            "óòọỏõôốồộổỗơớờợởỡ",

            "ÓÒỌỎÕÔỐỒỘỔỖƠỚỜỢỞỠ",

            "úùụủũưứừựửữ",

            "ÚÙỤỦŨƯỨỪỰỬỮ",

            "íìịỉĩ",

            "ÍÌỊỈĨ",

            "đ",

            "Đ",

            "ýỳỵỷỹ",

            "ÝỲỴỶỸ"
        };
public static string RemoveSign4VietnameseString(string str)
        {
            for (int i = 1; i < VietnameseSigns.Length; i++)
            {
                for (int j = 0; j < VietnameseSigns[i].Length; j++)
                    str = str.Replace(VietnameseSigns[i][j], VietnameseSigns[0][i - 1]);
            }
            return str;
        }