Come rimuovere gli spazi bianchi in una stringa in Python
- Rimuovere gli spazi bianchi all’inizio di una stringa in Python
- Rimuovere gli spazi bianchi alla fine di una stringa in Python
- Rimuovere i caratteri bianchi sia all’inizio che alla fine di una stringa in Python
- Rimuovere tutti i bianchi di una stringa in Python
- Rimuovere solo i bianchi duplicati di una stringa in Python
Di seguito viene mostrato come rimuovere gli spazi bianchi da una stringa. Potrebbe essere principalmente classificato in due diversi approcci, uno è il metodo Python str
, come str.split()
e str.replace()
; l’altro è il metodo di espressione regolare Python.
Useremo la stringa " Demo Example "
come la stringa da elaborare negli esempi seguenti.
Rimuovere gli spazi bianchi all’inizio di una stringa in Python
Metodo str.lstrip()
>>> demo = " Demo Example "
>>> demo.lstrip()
"Demo Example "
Qui, il metodo str.lstrip()
rimuove i caratteri iniziali specificati nell’argomento del metodo. Se non viene fornito alcun argomento, rimuove semplicemente gli spazi bianchi iniziali.
Metodo Python regex
>>> import re
>>> demo = " Demo Example "
>>> re.sub(r"^\s+", "", demo)
"Demo Example "
^
forza regex trova la stringa corrispondente solo all’inizio, e \s
significa far combaciare tutti i diversi tipi di spazi bianchi come spazio bianco, tab, ritorno, ecc. o in altre parole, è uguale all’insieme di questi caratteri speciali [ \t\n\r\f\v]
. +
indica che dovrebbe corrispondere al maggior numero possibile di spazi bianchi.
Si può fare riferimento a questo Python regular expression tutorial per saperne di più su regex.
Rimuovere gli spazi bianchi alla fine di una stringa in Python
Metodo str.rstrip()
Al contrario di str.lstrip()
, che mette a nudo i caratteri all’inizio della stringa, str.rstrip()
mette a nudo i caratteri alla fine.
>>> demo = " Demo Example "
>>> demo.lstrip()
" Demo Example"
Metodo Python regex
Allo stesso modo, si dovrebbe usare un’espressione che corrisponda agli spazi bianchi alla fine della stringa.
>>> import re
>>> demo = " Demo Example "
>>> re.sub(r"\s+$", "", demo)
" Demo Example"
Rimuovere i caratteri bianchi sia all’inizio che alla fine di una stringa in Python
Metodo str.strip()
str.strip()
è la combinazione di str.lstrip()
e str.rstrip()
per eliminare gli spazi bianchi all’inizio e alla fine della stringa.
>>> demo = " Demo Example "
>>> demo.strip()
"Demo Example"
Python regex sub()
metodo
>>> import re
>>> demo = " Demo Example "
>>> re.sub(r"^\s+|\s+$", "", demo)
"Demo Example"
Rimuovere tutti i bianchi di una stringa in Python
Python stringa sostituisce il metodo str.replace()
Non è necessario controllare la posizione dello spazio bianco. Pertanto, si potrebbe usare il metodo str.replace()
per sostituire tutti gli spazi bianchi con la stringa vuota.
>>> demo = " Demo Example "
>>> demo.replace(" ", "")
'DemoExample'
La stringa Python regex replace sub()
method
L’espressione regex potrebbe essere solo \s+
per abbinare i bianchi.
>>> import re
>>> demo = " Demo Example "
>>> re.sub(r"\s+", "", demo)
"DemoExample"
Rimuovere solo i bianchi duplicati di una stringa in Python
Metodo di divisione delle stringhe Python str.split()
str.split()
>>> demo = " Demo Example "
>>> " ".join(demo.split())
'Demo Example'
str.split()
restituisce una lista della sotto-corde nella stringa, usando gli spazi bianchi come stringa delimitatrice.
Metodo Python regex split re.split()
>>> import re
>>> demo = " Demo Example "
>>> " ".join(re.split(r"\s+", demo)
" Demo Example "
re.split()
e str.split()
sono diversi dove re.split()
avrà una stringa vuota all’inizio o alla fine della lista se la stringa ha spazi bianchi in queste posizioni, ma str.split()
non include nessuna stringa vuota nel suo risultato.Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook