Problème
La conversion des caractères accentués en leurs équivalents non accentués a été un défi pour certains programmeurs Go. Une tentative d'implémentation d'une fonction à l'aide du package "code.google.com/p/go.text/unicode/norm" dans Go 1.4 s'est avérée infructueuse.
Solution
Depuis avril 2015, une approche alternative est disponible avec l'introduction du package "runes", qui comprend une fonction "Supprimer" spécialement conçue à cet effet.
Mise à jour Go 1.5/1.6
Pour l'avenir, Go 1.5 ou 1.6 apportera probablement un nouveau package "runes" avec des opérations de transformation. Cela offrira une solution simplifiée utilisant la fonction « Supprimer », comme le montre l'exemple suivant :
<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>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!