Det klassiske problem, der kan håndteres ret nemt af Python, og som også er blevet behandlet mange gange, er at finde ud af, om en streng er en understreng til en anden. Men nogle gange ønsker man at udvide dette på en liste af strenge, og derfor kræver det så at man gennemløber hele containeren og udfører den generiske algoritme.

Lad os diskutere visse måder at finde strenge med given delstreng i liste.

Metode #1 : Brug af list comprehension
List comprehension er en elegant måde at udføre en bestemt opgave på, da det øger læsbarheden i det lange løb. Denne opgave kan udføres ved hjælp af naiv metode og kan derfor også reduceres til list comprehension.

test_list =
print ("The original list is : " + str(test_list))
subs = 'Geek'
res =
print ("All strings with given substring are : " + str(res))



Udgang:

The original list is : All strings with given substring are : 

Metode #2 : Ved hjælp af filter() + lambda
Denne funktion kan også udføre denne opgave med at finde strengene ved hjælp af lambda. Den filtrerer bare alle de strenge, der matcher den pågældende delstreng, og tilføjer dem derefter i en ny liste.

test_list =
print ("The original list is : " + str(test_list))
subs = 'Geek'
res = list(filter(lambda x: subs in x, test_list))
print ("All strings with given substring are : " + str(res))



Output:

The original list is : All strings with given substring are : 

Metode #3 : Brug af re + search()
Regulære udtryk kan bruges til at udføre mange opgaver i python. For at udføre denne særlige opgave kan regulære udtryk også være praktisk. Den finder alle de matchende delstrenge ved hjælp af search() og returnerer resultatet.

import re
test_list =
print ("The original list is : " + str(test_list))
subs = 'Geek'
res =
print ("All strings with given substring are : " + str(res))



Output:

The original list is : All strings with given substring are : 

Artikel Tags :