Удалить пробелы между двумя символами с помощью регулярных выражений - PullRequest
1 голос
/ 03 октября 2019

Я ищу удаление пробела между двумя символами в любой части предложения. Например, следующие фразы:

R Z EXCAVATING AND LOGGING
EXCAVATING R Z AND LOGGING

должно стать

RZ EXCAVATING AND LOGGING
EXCAVATING RZ AND LOGGING

Я пробовал следующее регулярное выражение ([A-Z](.*?)[A-Z]), но я не смог избавиться от пробела междудва персонажа.

Есть идеи?

1 Ответ

1 голос
/ 03 октября 2019

Вы можете использовать

text = re.sub(r'\b([A-Z])\s+(?=[A-Z]\b)', r'\1', text)

См. Демоверсию regex

Подробности

  • \b- граница слова
  • ([A-Z]) - Группа захвата 1: заглавная буква
  • \s+ - 1+ пробелы ...
  • (?=[A-Z]\b) - сразу послезаглавная буква не сопровождается словом char (буква, цифра, _).
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...