Heim >Backend-Entwicklung >Golang >Wie normalisiere ich die Texteingabe mithilfe der verbesserten Unicode-Verarbeitung in Go in ASCII?

Wie normalisiere ich die Texteingabe mithilfe der verbesserten Unicode-Verarbeitung in Go in ASCII?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-24 07:28:291055Durchsuche

How to Normalize Text Input to ASCII Using Enhanced Unicode Handling in Go?

Normalisierung der Texteingabe in ASCII mithilfe der verbesserten Unicode-Verarbeitung

Die Konvertierung von Nicht-ASCII-Zeichen in ihre ASCII-Äquivalente ist in vielen Programmierkontexten eine häufige Anforderung . Bei der Arbeit mit Benutzereingaben ist es notwendig, Sonderzeichen wie geschweifte Anführungszeichen konsistent zu behandeln.

Verwendung von Strings.Map für die Runenzuordnung

Die Go-Standardbibliothek stellt die strings.Map-Funktion zur effizienten Umwandlung der Runen eines Strings (Unicode-Codepunkte) in einen neuen String bereit. Diese Funktion ermöglicht eine detaillierte Kontrolle über Zeichenersetzungen.

Im bereitgestellten Beispiel wandelt der folgende Code geschweifte Anführungszeichen mithilfe der strings.Map-Funktion in gerade Anführungszeichen um:

<code class="go">data := "Hello “Frank” or ‹François› as you like to be ‘called’"
cleanedData := strings.Map(normalize, data)</code>

Die Normalisierungsfunktion ist ein Abschluss, der die Zeichenersetzungen basierend auf vordefinierten Unicode-Zeichenbereichen verarbeitet:

<code class="go">func normalize(in rune) rune {
    switch in {
    case '“', '‹', '”', '›':
        return '"'
    case '‘', '’':
        return '\''
    }
    return in
}</code>

Ausgabe:

Original: Hello “Frank” or ‹François› as you like to be ‘called’
Cleaned: Hello "Frank" or "François" as you like to be 'called'

Durch die Verwendung von strings.Map können wir Text normalisieren Eingabe in ASCII-Äquivalente, ohne auf String-Ersetzungen angewiesen zu sein. Dies bietet einen vielseitigen und effizienten Ansatz für den Umgang mit Nicht-ASCII-Zeichen in verschiedenen Programmierszenarien.

Das obige ist der detaillierte Inhalt vonWie normalisiere ich die Texteingabe mithilfe der verbesserten Unicode-Verarbeitung in Go in ASCII?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn