我正在写一个slug生成器来制作漂亮的网址.我想将m²转换为m2,但是以通用的方式将其转换为所有上标(或下标),而不仅仅是简单的替换语句.
有任何想法吗?
解决方法
谢谢约翰内斯,你让我走上正轨.我让它工作的代码如下:
public string ConvertSuperscript(string value) { string stringFormKd = value.Normalize(NormalizationForm.FormKD); StringBuilder stringBuilder = new StringBuilder(); foreach (char character in stringFormKd) { UnicodeCategory unicodeCategory = CharUnicodeInfo.GetUnicodeCategory(character); if (unicodeCategory != UnicodeCategory.NonSpacingMark) { stringBuilder.Append(character); } } return stringBuilder.ToString().Normalize(NormalizationForm.FormKC); }
我之前尝试过规范分解,但它需要兼容性分解才能正常工作.