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!