Il problema classico che può essere gestito abbastanza facilmente da Python ed è stato anche affrontato molte volte è trovare se una stringa è sottostringa di un’altra. Ma a volte, si desidera estendere questo su liste di stringhe, e quindi richiede di attraversare l’intero contenitore ed eseguire l’algoritmo generico.

Discutiamo alcuni modi per trovare le stringhe con una data sottostringa nella lista.

Metodo #1: Usare la comprensione della lista
La comprensione della lista è un modo elegante per eseguire qualsiasi compito particolare poiché aumenta la leggibilità nel lungo periodo. Questo compito può essere eseguito usando un metodo ingenuo e quindi può essere ridotto anche alla comprensione delle liste.

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




Uscita:

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

Metodo #2: Usando filter() + lambda
Questa funzione può anche eseguire questo compito di trovare le stringhe con l’aiuto di lambda. Filtra semplicemente tutte le stringhe che corrispondono alla particolare sottostringa e poi le aggiunge in una nuova lista.

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))




Uscita:

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

Metodo #3 : usando re + search()
Le espressioni regolari possono essere usate per eseguire molti compiti in python. Anche per eseguire questo particolare compito, le espressioni regolari possono essere utili. Trova tutte le sottostringhe corrispondenti usando search() e restituisce il risultato.

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



Uscita:

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

Articolo Tag :