问题

我正在寻找删除句子任何部分的两个字符之间的空格.例如,以下短语:

 R Z EXCAVATING AND LOGGING
EXCAVATING R Z AND LOGGING
 

应该变成

 RZ EXCAVATING AND LOGGING
EXCAVATING RZ AND LOGGING
 

我尝试了以下正则表达式([A-Z](.*?)[A-Z]),但我无法摆脱两个字符之间的空间.

任何想法?

  最佳答案

你可以使用

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

正则表达式

细节

  • – 单词边界
  • ([A-Z]) – Capting Group 1:大写字母
  • \s+ – 1 空格...
  • (?=[A-Z]) – 立即跟随一个大写字母而不跟随一个单词char(字母,数字,_).

  相同标签的其他问题

regexpython-3.x