Comment supprimer les espaces dans une chaîne de caractères en Python

  1. Supprimer les espaces au début d’une chaîne en Python
  2. Supprimer les espaces à la fin d’une chaîne de caractères en Python
  3. Supprimer les espaces au début et à la fin d’une chaîne en Python
  4. Supprimer tous les espaces d’une chaîne en Python
  5. Ne supprimez que les espaces dupliqués d’une chaîne en Python

Il vous montre ci-dessous comment supprimer les espaces blancs d’une chaîne. On pourrait principalement le classer en deux approches différentes, l’une est la méthode Python str, comme str.split() et str.replace(); l’autre est la méthode Python d’expression régulière.

Nous utiliserons la chaîne " Demo Example " comme la chaîne à traiter dans les exemples suivants.

Supprimer les espaces au début d’une chaîne en Python

Méthode str.lstrip()

>>> demo = " Demo  Example  "
>>> demo.lstrip()
"Demo  Example  "

Ici, la méthode str.lstrip() supprime les caractères de tête spécifiés dans l’argument de la méthode. S’il n’y a pas d’argument donné, elle supprime simplement les espaces de tête.

Méthode de regex Python

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"^\s+", "", demo)
"Demo  Example  "

^ force la regex à ne trouver que la chaîne de caractères correspondante à son début, et \s signifie de faire correspondre tous les différents types d’espaces comme les espaces, les tabulations, les retours, etc. ou en d’autres termes, c’est égal à la collection de ces caractères spéciaux [ \t\n\r\f\v]. + indique qu’il doit correspondre au plus grand nombre possible d’espaces.

Vous pouvez vous référer à ce tutoriel sur les expressions régulières Python pour en savoir plus sur la regex.

Supprimer les espaces à la fin d’une chaîne de caractères en Python

Méthode str.rstrip()

Contrairement à str.lstrip() qui supprime les caractères au début de la chaîne, str.rstrip() supprime les caractères à la fin.

>>> demo = " Demo  Example  "
>>> demo.lstrip()
" Demo  Example"

Méthode Python regex

De même, vous devez utiliser une expression qui correspond aux espaces blancs en fin de chaîne.

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"\s+$", "", demo)
" Demo  Example"

Supprimer les espaces au début et à la fin d’une chaîne en Python

Méthode str.strip()

str.strip() est la combinaison de str.lstrip() et str.rstrip() pour éliminer les espaces au début et à la fin de la chaîne.

>>> demo = " Demo  Example  "
>>> demo.strip()
"Demo  Example"

Méthode Python regex sub()

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"^\s+|\s+$", "", demo)
"Demo  Example"

Supprimer tous les espaces d’une chaîne en Python

Méthode python de remplacement de chaîne de caractères str.replace()

Il n’est pas nécessaire de vérifier la position de l’espace blanc. Par conséquent, vous pouvez utiliser la méthode str.replace() pour remplacer tous les espaces par la chaîne vide.

>>> demo = " Demo  Example  "
>>> demo.replace(" ", "")
'DemoExample'

La méthode Python string regex replace sub()

L’expression regex ne pouvait être que \s+ pour correspondre aux espaces.

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"\s+", "", demo)
"DemoExample"

Ne supprimez que les espaces dupliqués d’une chaîne en Python

Méthode python de fractionnement de chaînes de caractères str.split()

>>> demo = " Demo  Example  "
>>> " ".join(demo.split())
'Demo Example'

str.split() renvoie une liste de la sous-chaîne dans la chaîne, en utilisant les espaces comme délimiteur.

Méthode Python regex split re.split()

>>> import re
>>> demo = " Demo  Example  "
>>> " ".join(re.split(r"\s+", demo)
" Demo Example "
Avertissement

Les résultats de re.split() et str.split() sont différents où re.split() aura une chaîne vide au début ou à la fin de la liste si la chaîne a des espaces dans ces positions, mais str.split() n’inclut pas de chaîne vide dans son résultat.

Article connexe - Python String

  • Comment convertir une chaîne de caractères en octets en Python
  • Comment vérifier qu'une chaîne de caractères contient un nombre en python
  • comments powered by Disqus