如何将变音符号更改为非变音符号[重复]

2024-04-18

我在 stackoverflow 上找到了如何删除变音符号的答案,但是您能否告诉我是否可以将变音符号更改为非变音符号?

哦..我想到了.NET(或者其他,如果不可能的话)


由于没有人费心发布代码来执行此操作,因此它是:

    // \p{Mn} or \p{Non_Spacing_Mark}: 
    //   a character intended to be combined with another 
    //   character without taking up extra space 
    //   (e.g. accents, umlauts, etc.). 
    private readonly static Regex nonSpacingMarkRegex = 
        new Regex(@"\p{Mn}", RegexOptions.Compiled);

    public static string RemoveDiacritics(string text)
    {
        if (text == null)
            return string.Empty;

        var normalizedText = 
            text.Normalize(NormalizationForm.FormD);

        return nonSpacingMarkRegex.Replace(normalizedText, string.Empty);
    }

注意:需要这样做的一个重要原因是当您集成到仅执行 ascii 的第三方系统时,但您的数据采用 unicode 格式。这很常见。您的选择基本上是:删除重音字符,或尝试从重音字符中删除重音,以尝试尽可能多地保留原始输入。显然,这不是一个完美的解决方案,但它比简单地删除 ASCII 127 以上的任何字符要好 80%。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将变音符号更改为非变音符号[重复] 的相关文章

随机推荐

  • Android 如何从相机捕获两个连续的帧

    我正在尝试在 Android 设备上对光流进行编程 我的问题是从相机获取两个连续的帧 这是获取一帧的代码 mCamera setPreviewCallback new PreviewCallback public void onPrevie
  • Java 装饰器模式:我可以装饰受保护的方法吗?

    我想要Decorate 装饰器设计模式 一个通用的基类 但是我需要的方法Decorate受到保护 参见示例 public class AbstractActor public void act Delegates its actions t
  • 强制隐式调用的依赖类型解析

    我有一个包装特征 trait Wrapper T type Own F lt OwnThing F def ask F implicit own Own F 还有不同的实现 这里是一个例子 class CombinedWrapper A B
  • 暗淡和公共有什么区别?

    今天提出了一个关于范围的问题 这引起了我的思考 我一直了解 VBScript 范围以及如何声明全局和本地 我突然想到我从来没有使用过Public变量但倾向于使用Dim相反 在全局声明时 据我了解Dim是相同的Public 但如果是这样的话
  • PHP 密码的正则表达式 [重复]

    这个问题在这里已经有答案了 我在网上找到了一个脚本 它有一个 JavaScript 中的密码正则表达式 我仍然想使用它 但为了更安全 我也想使用 PHP 来验证我的密码 但我对正则表达式毫无用处 要求 必须至少 8 个字符 必须包含至少 1
  • 使用 sass 3 自定义 Bootstrap 5 颜色时出现无效 CSS 值错误

    我想用 SASS 更改 bootstrap 默认主题颜色 问题是当我更改颜色并编译时 它会给我无效的 CSS 值错误 我已阅读文档并在 YouTube 上看到了一些教程 但我看不出问题出在哪里 我正在使用 bootstrap 5 1 0 s
  • 此应用程序是否使用广告标识符 (IDFA)? - AdMob 6.8.0

    我目前正在将我的应用程序上传到 App Store Apple 询问我此应用程序是否使用 IDFA 我正在使用最新的 Admob SDK 或 6 8 0 但我不知道它是否使用 IDFA 如果使用 我应该点击哪些复选框 Image http
  • 调用重写的虚函数而不是重载

    假设我有这部分代码 include
  • 从 python 3 脚本构建适用于 Windows 的 .exe

    我想为 python 3 脚本构建一个可执行文件 导入 pyqtgraph 使用 pyqt5 导入 theano 和 pymc3 还导入 numpy scipy sys os 打开一个用 qt 设计器制作并存储在 ui 文件中的简单 GUI
  • 使用 Kotlin 创建新目录,Mkdir() 不起作用

    var filename blesson txt var wallpaperDirectory File sdcard Wallpaper wallpaperDirectory mkdirs val outputFile File wall
  • 在 D3.js 中绘制多条线

    到目前为止 我一直在使用循环将线条元素添加到 D3 可视化中 但这似乎不符合 API 的精神 假设我有一些数据 var data time 1 value 2 value2 5 value3 3 value4 2 time 2 value
  • 如何从仅包含键和键值对列表的列表创建字典(Python)?

    这是这个问题的延伸 如何在 Python 中拆分列表中的字符串以创建键值对 https stackoverflow com questions 12739911 how to separate string and create a key
  • 如何在 ASP.NET MVC Web 应用程序中使用 Ninject?

    我创建了一个新的 MVC Web 应用程序 并且引用了 Ninject dll Ninject Web Common dll 和 Ninject Web MVC dll Global asax cs public class MvcAppl
  • Application.Ontime 取消无法调用对象“Application”的“ONTIME”方法

    I am 完全地失去了所以任何帮助将不胜感激 我试图取消打开工作簿时触发的 2 个计划事件 并使用 Application Ontime 方法重复 我知道要终止 OnTime 计划循环 您必须提供计划运行的确切时间 并且拥有多个 Appli
  • 在 doxygen 中使用 SVG

    我正在尝试将 SVG 添加到我的 doxygen 文档中 第一次尝试是使用 image blabla svg 这有点工作 但是 SVG 包含另一个 png 参考 并且 内部 png 未显示 这在 Chrome 上有效 但即使在 Firefo
  • .NET 通过 TLS 1.2 删除客户端证书

    您好 似乎这个问题的某种形式已经被问过一百万种不同的方式 但许多人没有答案 或者答案不适用于我 我们有一个微不足道的小型 NET 服务 可以调用目前仅支持 TLS 1 2 的第 3 方 API var requestHandler new
  • Spring错误 - springframework.web.client.HttpClientErrorException:404 Not Found

    我正在尝试使用将对象传递给另一个类Spring 我不确定我使用的术语是否正确 我对Spring 这边走 TestServicesUtils getTemplate postForLocation http serverConfig port
  • PHP语句同步或异步

    早上好 我想知道 PHP 准备语句是同步还是异步 例如 req1 UPDATE statement1 connection gt prepare req1 statement1 gt execute req2 SELECT statemen
  • 锁定一个物体

    我经常看到这样的代码此处显示 http msdn microsoft com en us library ak9w5846 aspx 即分配一个对象 然后将其用作 锁定对象 在我看来 您可以使用任何对象来实现此目的 包括事件本身作为锁定对象
  • 如何将变音符号更改为非变音符号[重复]

    这个问题在这里已经有答案了 我在 stackoverflow 上找到了如何删除变音符号的答案 但是您能否告诉我是否可以将变音符号更改为非变音符号 哦 我想到了 NET 或者其他 如果不可能的话 由于没有人费心发布代码来执行此操作 因此它是