Maison > développement back-end > Golang > Comment normaliser la saisie de texte non-ASCII en ASCII à l'aide de la fonction strings.Map ?

Comment normaliser la saisie de texte non-ASCII en ASCII à l'aide de la fonction strings.Map ?

Patricia Arquette
Libérer: 2024-10-24 07:24:02
original
814 Les gens l'ont consulté

How to Normalize Non-ASCII Text Input to ASCII Using the strings.Map Function?

Normaliser la saisie de texte en ASCII

La gestion des caractères non-ASCII dans la saisie de texte peut être un défi, en particulier lorsque l'objectif est de les normaliser en équivalents ASCII. Un problème courant survient lorsque vous rencontrez des guillemets bouclés au lieu de guillemets droits. Bien que les remplacements de chaînes personnalisés puissent résoudre ce problème, la bibliothèque standard offre une solution plus complète.

La fonction strings.Map fournit un mécanisme pour mapper les runes (caractères Unicode) à d'autres runes. Cette approche offre une méthode personnalisable et générique pour convertir les caractères non-ASCII en équivalents ASCII.

Dans ce cas, le code suivant montre comment utiliser Map pour normaliser les guillemets bouclés en guillemets droits :

<code class="go">package main

import (
    "fmt"
    "strings"
)

func main() {
    data := "Hello “Frank” or ‹François› as you like to be ‘called’"
    fmt.Printf("Original: %s\n", data)
    cleanedData := strings.Map(normalize, data)
    fmt.Printf("Cleaned: %s\n", cleanedData)
}

func normalize(in rune) rune {
    switch in {
    case '“', '‹', '”', '›':
        return '"'
    case '‘', '’':
        return '\''
    }
    return in
}</code>
Copier après la connexion

Sortie

Original: Hello “Frank” or ‹François› as you like to be ‘called’
Cleaned: Hello "Frank" or "François" as you like to be 'called'
Copier après la connexion

En utilisant la fonction strings.Map, il est possible de définir des règles de mappage personnalisées qui gèrent divers caractères non-ASCII, garantissant que tout le texte saisi est normalisé en équivalents ASCII selon les besoins.

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!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal