Problem
Das Konvertieren von akzentuierten Zeichen in ihre nicht akzentuierten Äquivalente war eine Herausforderung für einige Go-Programmierer. Ein Versuch, eine Funktion mithilfe des Pakets „code.google.com/p/go.text/unicode/norm“ in Go 1.4 zu implementieren, erwies sich als erfolglos.
Lösung
Seit April 2015 steht mit der Einführung des Pakets „runes“ ein alternativer Ansatz zur Verfügung, der eine speziell für diesen Zweck entwickelte Funktion „Entfernen“ enthält.
Go 1.5/1.6 Update
Mit Blick auf die Zukunft wird Go 1.5 oder 1.6 wahrscheinlich ein neues „Runen“-Paket mit Transformationsoperationen bringen. Dies bietet eine vereinfachte Lösung mit der Funktion „Entfernen“, wie im folgenden Beispiel zu sehen ist:
<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>
Das obige ist der detaillierte Inhalt vonWie kann ich Akzente aus Zeichenfolgen in Go entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!