【问题标题】:Convert fullwidth to halfwidth将全角转换为半角
【发布时间】:2014-08-05 22:36:59
【问题描述】:

在 C# 中,如何将使用全角字符的字符串转换为半角字符?

例如,给定下面的userInput,我想将Stackoverflow转换为Stackoverflow

string userInput= "Stackoverflow";
//string userInput= "Stackoverflow";

【问题讨论】:

  • 创建一个映射(即Dictionary<char, char>),告诉您哪个字符属于另一个字符,然后逐个字符地翻译。
  • @AlexD 那页的格式是个笑话,对吧?
  • 认真的吗?还是这是个玩笑?
  • @AlexD 那么您可能想发布这个关键点作为答案? :)
  • 你的意思是像userInput.Normalize(NormalizationForm.FormKC)这样的吗?

标签: c# unicode


【解决方案1】:

你可以使用string.Normalize()方法:

string userInput = "Stackoverflow";
string result = userInput.Normalize(NormalizationForm.FormKC);
//result = "Stackoverflow"

请参阅DotNetFiddle 上的示例。

有关规范化表格的更多信息,请访问unicode.org

【讨论】:

  • 错字:test. 应该是userInput.
  • 谢谢@Darek。固定。
猜你喜欢
  • 2019-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多