Metodo n. 1: utilizzando split()
Utilizzando la funzione di divisione, possiamo dividere una stringa in un elenco di parole, e questa è la più comune e metodo consigliato se qualcuno vuole completare questa attività specifica. Ma lo svantaggio è che non funziona nei casi in cui la stringa contiene segni di punteggiatura.
# Python3 demo code
< br> # estrae parole dalla stringa
# usando split()
# stringa di inizializzazione
test_string
=
"Geeksforgeeks is best Computer Science Portal"
# print the original line
print
(
"La stringa originale è:"
+
test_string)
# using split()
# estrae parole dalla stringa
r es
print
(
"L`elenco delle parole è:"
+
str
(res) )
Esci:
La stringa originale è: Geeksforgeeks è il miglior portale di informatica
Il l`elenco di parole è: [`Geeksforgeeks`,` is`, `best`, `Computer`, `Science`, `Portal`]
Metodo n. 2: utilizzo di regex (findall ())
Nei casi che contengono tutti i caratteri speciali e i segni di punteggiatura, come discusso sopra, tr Il metodo tradizionale di ricerca di parole in una stringa usando la divisione può fallire e pertanto richiede espressioni regolari per svolgere questa attività. La funzione findall
restituisce un elenco dopo aver filtrato la stringa ed estratto le parole, ignorando i segni di punteggiatura.
# Python3 demo code
# estrae parole dalla stringa
# usando un`espressione regolare (findall ())
import
re
# stringa di inizializzazione
test_string
=
"Geeksforgeeks , è il migliore @ # Portale di informatica. !!!"
# print original line
print
(
"La stringa originale è: "
+
stringa_test)
# usando un`espressione regolare (findall ())
# estrae parole dalla stringa
res
=
re.findall (r
`w +`
, test_string)
# stampa risultato
stampa
(
"L`elenco delle parole è:"
+
str
(res))
Output:
La stringa originale è: Geeksforgeeks, è il migliore @ # Computer Science Portal. !!!
L`elenco di parole è: [`Geeksforgeeks`, `is`, `best`, `Computer `,` Science `,` Portal `]
Metodo n. 3: utilizzo di regex () + string.punctuation
Questo metodo utilizzava anche espressioni regolari, ma la funzione ottieni tutte le stringhe di punteggiatura viene utilizzata per ignorare tutta la punteggiatura e ottenere la stringa del risultato filtrata.
# Python3 demo code
# estrae le parole dalla stringa
< br> # using regex () + string.punctuation
import
re
import
stringa
# stringa di inizializzazione
test_string
=
" Geeksforgeeks, è il migliore @ # Portale di informatica. !!! "
# print original string
print
(
" La stringa originale è: "
+
test_string)
# using regex() + string.punctuation
# estrae parole dalla stringa
res
=
re.sub (
`[`
+
string.punctuation
+
`] `
,` `, test_string ) .split ()
# stampa risultato
print
+
str
( res))
Esci:
La stringa originale è: Geeksforgeeks, è il migliore @ # Computer Science Portal. !!!
L`elenco di parole è: [`Geeksforgeeks`, `is`, `best`, `Computer`, `Science`, `Portal`]