Come faccio a controllare se una stringa contiene un'altra sottostringa in Python

Come faccio a controllare se una stringa contiene un'altra sottostringa in Python
A volte dobbiamo scoprire se una particolare stringa è presente in un'altra stringa o no. Quindi per sapere che ci sono alcuni metodi già predefiniti disponibili nella programmazione Python. Esistono cinque metodi più comuni che possiamo usare sono:
  1. in operatore
  2. Trova metodo
  3. Metodo indice
  4. Metodo conta
  5. Metodo di espressione regolare

Quindi, iniziamo a discutere in dettaglio ogni metodo.

Metodo 1: Usando in operatore

Il primo metodo che vedremo è il metodo dell'operatore "in". Questo operatore di Python restituirà vero se la sottostringa è presente nella stringa, oppure restituirà False. Questo è il modo più semplice per verificare se una stringa ha una sottostringa o no. Il programma di seguito fornirà un esempio completo per utilizzare questo metodo.

String = "Python Coding Day"
substring = "python"
Se la sottostringa nella stringa:
Stampa ("trovato la sottostringa")
altro:
stampa ("non trovato")

Produzione:

Ho trovato la sottostringa

Riga 1 e 2: Abbiamo creato una stringa e una sottostringa.

Riga da 4 a 7: Ora stiamo controllando le condizioni con l'operatore "in" per vedere se c'è una sottostringa nella stringa o no. Se restituisce vero, stamperà l'istruzione o salterà all'altra affermazione. Il nostro output mostra che restituisce vero o possiamo anche vedere che Python è presente nella stringa.

Metodo 2: Usando il metodo find ()

Il secondo metodo di cui discuteremo è il metodo find (). Questo metodo restituirà il primo indice della sottostringa se la sottostringa è presente nella stringa, oppure restituirà -1. Questo è anche il modo più semplice per verificare se una stringa ha una sottostringa o meno. Il programma di seguito fornirà un esempio completo di come utilizzare questo metodo.

String = "Python Coding Day"
substring = "python"
Se stringa.Trova (sottostringa) != -1:
Stampa ("trovato la sottostringa")
altro:
stampa ("non trovato")

Produzione:

Ho trovato la sottostringa

Riga 1 e 2: Abbiamo creato una stringa e una sottostringa.

Riga da 4 a 7: Ora stiamo controllando le condizioni con il metodo Trova per vedere se esiste una sottostringa nella stringa o no. Come sappiamo, se la sottostringa è presente, restituirà l'indice iniziale della sottostringa, altrimenti restituirà -1. Quindi, stiamo verificando la condizione che la stampa eseguirà quando il valore di restituzione non è uguale a -1, il che significa direttamente che una sottostringa è presente nella stringa. Il nostro output mostra che restituisce un valore positivo o possiamo anche vedere che Python è presente nella stringa.

Metodo 3: Usando il metodo indice

Il prossimo metodo di cui discuteremo è il metodo indice (). Questo metodo è molto simile al metodo find (), ma questo metodo restituirà il primo indice della sottostringa di occorrenza se la sottostringa è presente nella stringa, oppure solleva un errore. Quindi, per gestire l'eccezione dell'errore del valore, dobbiamo utilizzare la gestione delle eccezioni come mostrato nel programma di esempio seguente. Questo è anche il modo più semplice per verificare se una stringa ha una sottostringa o meno. Il programma di seguito fornirà un esempio completo di come utilizzare questo metodo.

String = "Python Coding Day"
substring = "python"
Tentativo:
corda.indice (sottostringa)
Tranne ValueRror:
stampa ("non trovato")
altro:
Stampa ("trovato la sottostringa")

Produzione:

Ho trovato la sottostringa

Riga 1 e 2: Abbiamo creato una stringa e una sottostringa.

Riga da 4 a 7: Abbiamo mantenuto la nostra condizione di controllo delle stringhe all'interno del tentativo e tranne il blocco per gestire l'errore di eccezione; Altrimenti, il programma si fermerà incondizionatamente. Ora stiamo controllando con il metodo dell'indice della classe String per scoprire il primo valore dell'indice del verificarsi di sottostringa. Come sappiamo, se la sottostringa è presente, restituirà l'indice iniziale della sottostringa; altrimenti, aumenterà un'eccezione. Se la sottostringa è presente nella stringa, salterà direttamente nella parte altro; Altrimenti, aumenterà l'eccezione ValueRror. Il nostro output mostra che restituisce un valore positivo o possiamo anche vedere che Python è presente nella stringa.

Metodo 4: Utilizzo del metodo Count ()

Il prossimo metodo di cui discuteremo è il metodo Count (). Il metodo di conteggio ha un altro vantaggio: conterrà tutte le sottostringhe presenti nella stringa. Restituirà il numero di sottostringhe presenti nella stringa. Se non è presente alcuna sottostringa nella stringa, restituirà 0.

String = "Python Coding Day"
substring = "python"
Se stringa.COUNT (Substring)> 0:
Stampa ("trovato la sottostringa")
altro:
stampa ("non trovato")

Produzione:

Ho trovato la sottostringa

Riga 1 e 2: Abbiamo creato una stringa e una sottostringa.

Riga da 4 a 7: Ora stiamo controllando le condizioni con il metodo della classe di conteggio delle stringhe per vedere se esiste una sottostringa nella stringa. Come sappiamo, se la sottostringa è presente, restituirà il numero totale delle sottostringhe presenti nella stringa; Altrimenti, tornerà 0. Quindi, controlliamo la condizione che la stampa eseguirà quando il valore di restituzione è maggiore di 0, il che significa direttamente che una sottostringa è presente nella stringa. Il nostro output mostra che restituisce un valore maggiore di 0, o possiamo anche vedere che Python è presente nella stringa.

Il metodo di conteggio è utile per conoscere il numero totale di substrings nella stringa principale.

Metodo 5: Usando il metodo di espressione regolare

Il prossimo metodo di cui discuteremo è il metodo di espressione regolare. Il metodo di espressione regolare è molto facile da usare. L'espressione regolare definisce innanzitutto il modello che vogliamo cercare, e quindi dobbiamo usare il metodo di ricerca, che è la classe di libreria Re. Passiamo sia il modello di ricerca che la stringa originale all'interno di quello, come mostrato nel programma di esempio seguente.

Dalla ricerca di importazione
String = "PythonCodingDay"
substring = "python"
Se ricerca (sottostringa, stringa):
Stampa ("trovato la sottostringa")
altro:
stampa ("non trovato")

Produzione:

Ho trovato la sottostringa

Linea 1: Importiamo la libreria RE perché abbiamo bisogno del modulo di ricerca.

Riga 3 e 4: Abbiamo creato una stringa e una sottostringa.

Riga da 6 a 9: Ora stiamo controllando le condizioni con il modulo di ricerca se esiste una sottostringa nella stringa o no. Se restituisce vero, stamperà l'istruzione o salterà all'altra affermazione. Il nostro output mostra che restituisce vero o possiamo anche vedere che Python è presente nella stringa.

Conclusione: In questo articolo, abbiamo visto diversi tipi principali di metodi per cercare una sottostringa nella stringa genitore. L'ultimo metodo dell'espressione regolare, di cui abbiamo discusso, è molto lento e dobbiamo usarlo solo in alcuni casi critici. Il metodo migliore che è molto facile da usare è il metodo dell'operatore "in". Altri metodi sono anche facili da usare che dipendono dai requisiti dell'utente. Quindi puoi vedere dove vuoi utilizzare questi metodi in base alle tue esigenze.

Il codice per questo articolo è disponibile sul collegamento GitHub:
https: // github.com/shekharpandey89/check-string-has-substring-o-non-python