ホームページ >バックエンド開発 >Golang >Go で文字列からアクセントを削除するにはどうすればよいですか?

Go で文字列からアクセントを削除するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-03 15:45:03776ブラウズ

How Can I Remove Accents from Strings in Go?

Go の文字列からアクセントを削除する

問題

アクセント付き文字をアクセント付きでない文字に変換するのは困難でした一部の Go プログラマー向け。 Go 1.4 の「code.google.com/p/go.text/unicode/norm」パッケージを使用して関数を実装しようとしましたが、失敗したことが判明しました。

解決策

2015 年 4 月の時点で、この目的のために特別に設計された「削除」機能を含む「ルーン」パッケージの導入により、代替アプローチが利用可能です。

Go 1.5/1.6 Update

将来的には、Go 1.5 または 1.6 で変換操作を備えた新しい「ルーン」パッケージが提供される可能性があります。これにより、次の例に示すように、「削除」機能を使用した簡素化されたソリューションが提供されます。

<code class="go">package main

import (
    "fmt"
    "transform"

    "github.com/kjk/runes"
    "github.com/kjk/runes/example_test"
)

func ExampleRemove() {
    t := transform.Chain(norm.NFD, runes.Remove(runes.In(unicode.Mn)), norm.NFC)
    s, _, _ := transform.String(t, "résumé")
    fmt.Println(s)

    // Output:
    // resume
}

func main() {
    ExampleRemove()
}</code>

以上がGo で文字列からアクセントを削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。