Maison > Article > développement back-end > Comment identifier les 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.
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 :
<code class="go">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 }</code>
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 :
<code class="go">package main import ( "fmt" "strings" ) func main() { f := func(r rune) bool { return r < 'A' || 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 } }</code>
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!