590 votes

Vérifie si plusieurs chaînes existent dans une autre chaîne

Comment puis-je vérifier si une des chaînes dans un tableau existe dans une autre chaîne ?

Comme :

Que le code ne fonctionne, c’est juste pour montrer ce que je veux atteindre.

1147voto

Mark Byers Points 318575

Vous pouvez utiliser `` :

De même pour vérifier si toutes les chaînes de la liste sont trouvent, utilisez `` au lieu de `` .

57voto

jbernadas Points 1154

Vous devez être prudent si les chaînes dans ou s’allonge. Les solutions simples prennent O(S*(A^2)), où est la longueur de et A est la somme de la longueur de toutes les chaînes de `` . Pour une solution plus rapide, consultez algorithme d’Aho-Corasick pour chaîne correspondante, qui se déroule en temps linéaire O(S+A).

13voto

Seamus Campbell Points 11752

Vous avez besoin effectuer une itération sur les éléments d’un.

4voto

mluebke Points 2588
a = ['a', 'b', 'c']
str =  "a123"

a_match = [True for match in a if match in str]

if True in a_match:
  print "some of the strings found in str"
else:
  print "no strings found in str"

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X