Maison > développement back-end > Golang > Comment convertir efficacement les caractères d'échappement HTML dans Go ?

Comment convertir efficacement les caractères d'échappement HTML dans Go ?

Patricia Arquette
Libérer: 2024-12-15 06:33:13
original
537 Les gens l'ont consulté

How to Efficiently Convert HTML Escape Characters in Go?

Conversion efficace des caractères d'échappement HTML

Dans Golang, la conversion simple des caractères HTML d'échappement est nécessaire pour diverses tâches. Un défi courant consiste à convertir "u003chtmlu003e" en "". Alors que json.Marshal() peut facilement gérer la conversion inverse, json.Unmarshal() peut être fastidieux et fastidieux.

Utiliser strconv.Unquote()

Heureusement, la fonction strconv.Unquote() offre une solution à cette énigme. Cette fonction permet de supprimer efficacement les guillemets des chaînes échappées. Cependant, cela nécessite que les chaînes soient placées entre guillemets.

Mise en œuvre pratique

// Important to use backtick ` (raw string literal)
// else the compiler will unquote it (interpreted string literal)!

s := `\u003chtml\u003e`
fmt.Println(s)
s2, err := strconv.Unquote(`"` + s + `"`)
if err != nil {
    panic(err)
}
fmt.Println(s2)
Copier après la connexion

L'exécution de ce code dans Go Playground produit le résultat souhaité :

\u003chtml\u003e
<html>
Copier après la connexion

Options alternatives

Le package html dans Golang également fournit des fonctions pour l'échappement et la déséchappement du texte HTML. Bien qu'il gère efficacement les caractères ASCII, il ne prend pas en charge les séquences Unicode de la forme uxxxx, uniquement decimal; ou HH;.

Cependant, il est important de noter que les chaînes avec évasion de barre oblique inverse (comme "u003chtmlu003e") sont automatiquement non citées par le compilateur en tant que littéraux de chaîne interprétés. Pour éviter cette suppression des guillemets, utilisez des littéraux de chaîne bruts spécifiés avec des guillemets (`) ou des littéraux de chaîne interprétés entre guillemets doubles.

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.cn
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