"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment identifier les caractères spéciaux dans les chaînes en Golang ?

Comment identifier les caractères spéciaux dans les chaînes en Golang ?

Publié le 2024-11-15
Parcourir:987

How do you Identify Special Characters in Strings in Golang?

Identification des caractères spéciaux dans les chaînes en Golang

Dans GoLang, la vérification des caractères spéciaux dans une chaîne nécessite des méthodes spécifiques. Lorsque vous rencontrez une chaîne obtenue à partir d'une saisie utilisateur, garantir sa validité nécessite souvent de vérifier l'absence de caractères malveillants ou indésirables. Cet article explore deux approches pour détecter les caractères spéciaux dans les chaînes.

Méthode 1 : Utilisation de strings.ContainsAny()

La fonction strings.ContainsAny() détermine si une chaîne contient un caractère d'un élément fourni. ensemble de caractères. Pour vérifier les caractères spéciaux, transmettez la chaîne et un jeu de caractères spéciaux à la fonction. Par exemple : 

package main

import "strings"

func main() {
    fmt.Println(strings.ContainsAny("Hello World", ",|"))  // false
    fmt.Println(strings.ContainsAny("Hello, World", ",|")) // true
    fmt.Println(strings.ContainsAny("Hello|World", ",|"))  // true
}

Méthode 2 : Utilisation de strings.IndexFunc()

Pour vérifier si une chaîne contient des caractères non-ASCII, strings.IndexFunc() s'avère utile. Il renvoie l'index du premier caractère qui satisfait une fonction fournie. Passez une fonction qui vérifie si le caractère est en dehors de la plage de caractères ASCII :

package main

import (
    "fmt"
    "strings"
)

func main() {
    f := func(r rune) bool {
        return r  'z'
    }
    if strings.IndexFunc("HelloWorld", f) != -1 {
        fmt.Println("Found special char") // false
    }
    if strings.IndexFunc("Hello World", f) != -1 {
        fmt.Println("Found special char") // true
    }
}
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3