Как удалить белый пробел в строке на Python

  1. Удаляем пробелы в начале строки на Python
  2. Удаление пробельных символов в конце строки на Python
  3. Удаление пробельных символов в начале и в конце строки на Python
  4. Удалить все белые пробела строки на Python
  5. Удалять дубликаты пробела строки только на Python

Ниже показано, как удалить белые пространства из строки. В основном он может быть разделен на два различных подхода, один из которых - методы Python str, такие как str.split() и str.replace(); другой - метод регулярных выражений Python.

В качестве строки для обработки будем использовать строку " Demo Example " в следующих примерах.

Удаляем пробелы в начале строки на Python

str.lstrip() метод

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

Здесь метод str.lstrip() удаляет ведущие символы, указанные в аргументе метода. Если аргумент не указан, он просто удаляет лидирующие пробелы.

Метод Python regex

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

^ force regex находит соответствие только в начале строки, а \s означает соответствие всех типов белых пространств, таких как пробелы, табуляции, возвраты и т.д. или, иными словами, оно равнозначно коллекции этих специальных символов [ \t\n\r\f\v]. + указывает на то, что оно должно как можно больше соответствовать пробелам.

Чтобы узнать больше о регексе, можно обратиться к этому Учебное пособие по регулярному выражению на языке Python.

Удаление пробельных символов в конце строки на Python

str.rstrip() метод

В отличие от str.lstrip(), которая удаляет символы в начале строки, str.rstrip() удаляет символы в конце.

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

Метод Python regex

Аналогично, следует использовать выражение, которое совпадает с белыми пробелами в конце строки.

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

Удаление пробельных символов в начале и в конце строки на Python

str.strip() Метод

str.strip() является комбинацией str.lstrip() и str.rstrip() для устранения пробелов в начале и в конце строки.

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

Python regex sub() метод

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

Удалить все белые пробела строки на Python

Метод замены Pythonской строки str.replace()

Нет необходимости проверять положение белого пространства. Поэтому можно использовать метод str.replace() для замены всех белых пробелов на пустую строку.

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

Метод sub() замена sub() на Python string regex

Выражение регекса могло быть только \s+ для соответствия белым пробелам.

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

Удалять дубликаты пробела строки только на Python

Метод Python string split str.split()

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

str.split() возвращает список подстрок в строке, используя белые пробела в качестве разделительной строки.

Метод python regex split re.split()

>>> import re
>>> demo = " Demo  Example  "
>>> " ".join(re.split(r"\s+", demo)
" Demo Example "
Предупреждение

Результаты re.split() и str.split() различны, где re.split() будет иметь пустую строку в начале или в конце списка, если в этих позициях у строки есть пробелы белого цвета, но str.split()` не включает в свой результат ни одной пустой строки.

Сопутствующая статья - Python String

  • Как проверить, что строка пуста в Python
  • Как конвертировать строку в дату на Python
  • Как преобразовать строку в нижний кейс на Python 2 и 3
  • Как проверить, содержит ли струна подвеску на Python
  • Как преобразовать список в струну на Python
  • Как преобразовать строку в плавучую или интру в Python
  • Как прочитать один файл строка за строкой к списку на Python
  • Как преобразовать строку в байты на Python
  • comments powered by Disqus