Python 仅将单个坯料更换为空尾撑,但保留多个坯料

Python 仅将单个坯料更换为空尾撑,但保留多个坯料,python,regex,Python,Regex,例如: 我不能使用re.sub(r'','',content)。因为我想保留多个连续空格,所以只将单个空格替换为空字符串 我知道如何通过[^]()[^] 但它也会左右匹配: 我知道我可以做像这样的事情 re.sub(r' +', '$$$$$', content) re.sub(r' ', '', content) re.sub(r'$$$$$', ' ', content) 但我想知道有什么简单的方法可以实现我的目标吗 多亏了@Wiktor Stribiżew,第一个成功了

例如:

我不能使用
re.sub(r'','',content)
。因为我想保留多个连续空格,所以只将单个空格替换为空字符串

我知道如何通过
[^]()[^]

但它也会左右匹配:

我知道我可以做像这样的事情

re.sub(r'  +', '$$$$$', content)
re.sub(r' ', '', content)
re.sub(r'$$$$$', '     ', content) 
但我想知道有什么简单的方法可以实现我的目标吗


多亏了@Wiktor Stribiżew,第一个成功了

In [2]: content = "ss ss   sss ddd rrt        d d dd     "

In [3]: re.sub(r'(?<! ) (?! )', '', content)
Out[3]: 'ssss   sssdddrrt        dddd     '

In [4]: re.sub(r'( ) ( )', r'\1\2', content)
Out[4]: 'ss ss  sss ddd rrt      d d dd    '
[2]中的
:content=“ss-sss-ddd-rrt-dd”
在[3]:re.sub(r’(?中)可以使用

re.sub(r'(?<! ) (?! )', '', content)

你能解释一下吗?
re.sub(r'(?<!\s)\s(?!\s)', '', content)