Maison >développement back-end >Golang >Comment détecter les caractères spéciaux dans les chaînes Go ?

Comment détecter les caractères spéciaux dans les chaînes Go ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-02 00:27:02954parcourir

How to Detect Special Characters in Go Strings?

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

Dans GoLang, la gestion des chaînes implique souvent la nécessité de déterminer si un caractère ou une sous-chaîne particulière est qualifié de un caractère spécial. Cela peut être crucial pour la validation des données, la vérification des entrées et diverses autres exigences de programmation. Explorons différentes approches pour cette tâche.

Utilisation de strings.ContainsAny

La fonction strings.ContainsAny fournit un moyen efficace de vérifier si une chaîne donnée contient l'un des caractères spécifié dans une sous-chaîne fournie. Par exemple, pour vérifier si une chaîne contient l'un des caractères spéciaux "|" ou ",":

<code class="go">package main

import "fmt"
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>

Utilisation de strings.IndexFunc

Alternativement, si l'objectif est de vérifier si une chaîne contient des caractères en dehors de la plage ASCII (c'est-à-dire, caractères spéciaux), la fonction strings.IndexFunc peut être utilisée. Cette fonction permet de définir une fonction personnalisée pour tester chaque rune de la chaîne :

<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")
    }
    if strings.IndexFunc("Hello World", f) != -1 {
        fmt.Println("Found special char")
    }
}</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!

Déclaration:
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