C# 用C语言中字符串中的非特殊等价物替换特殊字符

C# 用C语言中字符串中的非特殊等价物替换特殊字符,c#,string,character,ascii,C#,String,Character,Ascii,我有大约1000个字符串,可以在添加更多字符串时随时更改,有些字符串可以使用不同语言的特殊字符删除。它们都包含各种特殊字符,如ñ。是否有一种方法可以编写一个函数,将给定字符串中的所有特殊字符更改为其正常等效字符,而不是删除它们,从而使ñ变成n。字符串ññoolpę会变成nnoolpe。我在其他地方找到了答案。如果有人想看,这里是: 字符串规范化字符串输入 { 返回string.Concatinput.NormalizeNormalizationForm.FormD.Where c=>CharUn

我有大约1000个字符串,可以在添加更多字符串时随时更改,有些字符串可以使用不同语言的特殊字符删除。它们都包含各种特殊字符,如ñ。是否有一种方法可以编写一个函数,将给定字符串中的所有特殊字符更改为其正常等效字符,而不是删除它们,从而使ñ变成n。字符串ññoolpę会变成nnoolpe。

我在其他地方找到了答案。如果有人想看,这里是:

字符串规范化字符串输入 { 返回string.Concatinput.NormalizeNormalizationForm.FormD.Where c=>CharUnicodeInfo.getunicodecategory!=UnicodeCategory.nonspacemark; }
它来自。

您如何定义“特殊”字符?是否有一份明确的名单?你能一个接一个地替换字符串吗?如果你要替换字符串。替换路径,请使用StringBuilder。替换。你最终会产生更少的垃圾