我正在尝试找到一个常规exp,使我能够用单个空格替换所有换行符和制表符(\ n,\ r,\ t等),以及之前,之后和之间的所有空格。例如,字符串
'版权所有©\ n \ t \ t \ t \ n \ t \ t \ t2019 \ n \ t \ t \ tApple Inc.版权所有 保留。”
应该变成
“版权所有©2019 Apple Inc.。保留所有权利。”
此外,如果原始字符串为:
'版权所有©\ n \ t \ t \ t \ n \ t \ t \ t2019 \ n \ t \ t \ t Apple Inc.保留所有权利 保留。”
最终结果应该相同。
对于单个换行符,在最简单的情况下,没有多余的空格,就像
re.sub(r"\n", " ", html)
但是由于我不经常处理正则表达式,所以我不知道该如何解决我想要的东西。
答案 0 :(得分:5)
尝试使用\ s,它匹配所有空白字符。
>>> import re
>>> s = 'Copyright ©\n\t\t\t\n\t\t\t2019\n\t\t\tApple Inc. All rights reserved.'
>>> s = re.sub("\s+", " ", s)
>>> s
'Copyright © 2019 Apple Inc. All rights reserved.'