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 :
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
}
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
}
}
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