我想使用 Re 模块将 Python 中存在连续制表符和/或空格的所有实例替换为单个空格。我不想删除新行(这排除了\s 推荐)。目前我有:
formateed_string = re.sub("\t+" , " ", formateed_string)
formateed_string = re.sub(" +" , " ", formateed_string)
formateed_string = re.sub("\t " , " ", formateed_string)
formateed_string = re.sub(" \t" , " ", formateed_string)
即首先检查连续的空格,然后是连续的制表符,然后是制表符/空格,然后是空格/制表符。这似乎通常有效,但偶尔会留下双空格(我猜这意味着制表符/空格有不寻常的污染,上面没有完全删除)。
是否有一种简单/更优雅的方法来实现这一目标?
[注意运行 Python 2.7]
请您参考如下方法:
下面的正则表达式会将连续的制表符或空格替换为单个空格。请注意,它不会将单个制表符转换为空格。
formatted_string = re.sub("[\t ]{2,}", " ", formatted_string)
