Maison  >  Article  >  développement back-end  >  Comment ignorer les valeurs dans la tranche si la condition correspond pour la première fois

Comment ignorer les valeurs dans la tranche si la condition correspond pour la première fois

王林
王林avant
2024-02-08 21:15:211221parcourir

Comment ignorer les valeurs dans la tranche si la condition correspond pour la première fois

l'éditeur php Banana vous présentera comment ignorer la valeur de la première condition de correspondance lors du découpage. Au cours du développement, nous devons souvent traiter des tranches de tableaux ou de chaînes, mais nous souhaitons parfois ignorer la première valeur de la tranche qui répond à une condition spécifique. Cela peut être dû au fait que nous ne nous soucions que des correspondances ultérieures ou que nous n'avons besoin de traiter les valeurs qu'après une position spécifique. Nous explorerons ensuite plusieurs solutions pour vous aider à atteindre cet objectif.

Contenu de la question

Comment ignorer les valeurs dans la tranche si la condition correspond une fois.

func main() {

    cloud := []string{"moon", "earth", "moon-light"}

    for _, value := range cloud {

        if strings.Contains(value, "mo") {
            fmt.Println("print1")
        } else if strings.Contains(value, "ear") {
            fmt.Println("print2")
        }
    }
}

Sortie : imprimer 1 Imprimer 2 Imprimer 1

Résultat attendu : imprimer 1 Imprimer 2

Merci !

Solution de contournement

Vous pouvez utiliser la carte pour savoir si une situation spécifique se produit. C'est mieux que d'utiliser des variables car cela vous permet de suivre un grand nombre de conditions sans provoquer de confusion. Voici un exemple de ce que vous souhaitez :

cloud := []string{"moon", "earth", "moon-light"}
var conditionTracker = make(map[string]bool)

for _, value := range cloud {

    if _, ok := conditionTracker["first_condition"]; !ok && strings.Contains(value, "mo") {
        conditionTracker["first_condition"] = true
        fmt.Println("print1")
    } else if _, ok := conditionTracker["second_condition"]; !ok && strings.Contains(value, "ear") {
        conditionTracker["second_condition"] = true
        fmt.Println("print2")
    }
}

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer