当前位置: 首页 > 面试题库 >

使用Go删除变音符号

申嘉慕
2023-03-14
问题内容

如何使用Go从给定的UTF8编码字符串中删除所有变音符号?例如,转换字符串"žůžo"=> "zuzo"。有没有标准的方法?


问题答案:

您可以使用Go中的文本规范化中描述的库。

这是这些库的应用程序:

// Example derived from: http://blog.golang.org/normalization

package main

import (
    "fmt"
    "unicode"

    "golang.org/x/text/transform"
    "golang.org/x/text/unicode/norm"
)

func isMn(r rune) bool {
    return unicode.Is(unicode.Mn, r) // Mn: nonspacing marks
}

func main() {
    t := transform.Chain(norm.NFD, transform.RemoveFunc(isMn), norm.NFC)
    result, _, _ := transform.String(t, "žůžo")
    fmt.Println(result)
}


 类似资料:
  • 问题内容: 可能吗?这是我的输入字符串: 这是我想要的输出: 问题答案: Wordpress使用了一个功能,效果很好。这是带有输出的工作代码。

  • 问题内容: 去除口音的最佳方法是什么? ÈâuÑ”成为“ Eaun” 不 使用 问题答案: 完整的工作代码。 我知道这很长,但是这是Wordpress使用的肯定方式。

  • 问题内容: 如何从字符串中删除重音符号?尤其是在IE6中,我有类似以下内容: 但是IE6困扰着我,似乎不喜欢我的正则表达式。 问题答案: 使用ES2015 / ES6 String.Prototype.Normalize(), 这里发生两件事: 根据Unicode规范形式,将组合的字形分解为简单的字形。在中端起来表示为+ 。 现在,使用正则表达式字符类来匹配U + 0300→U + 036F范围,

  • 问题内容: 我正在寻找一种算法,该算法可以在带有变音符号的字符(tilde,circumflex,caret,umlaut,caron)与其“简单”字符之间进行映射。 例如: 等等。 我想用Java做到这一点,尽管我怀疑它应该是Unicode-y,并且应该可以轻松地以任何语言进行操作。 目的:允许轻松搜索带有变音标记的单词。例如,如果我有一个网球运动员数据库,并且输入了Björn_Borg,我还将

  • 问题内容: 我正在制作瑞典语网站,瑞典语字母是å,ä和ö。 我需要创建一个用户输入的字符串,以使用PHP进行网址安全。 基本上,需要将所有字符都转换为下划线,除以下字符外: 并且所有瑞典语都应该这样转换: “å”到“ a”,“ä”到“ a”,“ö”到“ o”(只需删除上面的点)。 正如我所说,其余的应该成为下划线。 我不太擅长使用正则表达式,因此我非常感谢您的帮助! 谢谢 注意:不是URLENCO

  • 问题内容: 如何从字符串中删除变音符号? 例如,转换适用于所有语言的所有á-> a,č-> c等。 我正在进行全文搜索,因此需要忽略搜索文字的任何变音符号。 谢谢 问题答案: 使用9级以上的API,您可以使用Normalizer类,例如 (Keysers链接的答案看起来更好,它可以清除更多废话) 这将返回。