关于Regex Python:正则表达式Python – 用单个空格替换换行符,制表符,空格的任意组合

Regex Python - Replace any combination of line breaks, tabs, spaces, by single space

本问题已经有最佳答案,请猛点这里访问。

我试图找到一个正则exp,它使我能够将所有换行符和制表符(、
、 等)以及前面、后面和中间的所有空格替换为一个空格。例如,字符串

'Copyright ?
\t\t\t
\t\t\t2019
\t\t\tApple Inc. All rights
reserved.'

应该变成

'Copyright ? 2019 Apple Inc. All rights reserved.'

此外,如果原始字符串是:

'Copyright ?
\t \t\t
\t\t\t2019
\t\t\t Apple Inc. All rights
reserved.'

最终结果应该是相同的。

对于单个换行符,在最简单的情况下,如果没有额外的空格,它将类似于

1
2
re.sub(r"
"
,"", html)

但由于我不经常处理正则表达式,我不知道如何解决我所追求的问题。


尝试使用匹配所有空白字符的s。

1
2
3
4
5
6
7
8
>>> import re
>>> s = 'Copyright ?
\t\t\t
\t\t\t2019
\t\t\tApple Inc. All rights reserved.'

>>> s = re.sub("\s+","", s)
>>> s
'Copyright ? 2019 Apple Inc. All rights reserved.'