python - 删除不需要的空格

时间:2014-12-23 10:26:41

标签: python python-2.7

我有一些字符串:

"text text                  blabla bla "

我需要

"text text blabla bla"

如何在python中删除不必要的空格?

我试过replace(),但我不知道有多少坏空格。

4 个答案:

答案 0 :(得分:3)

您可以split然后join

>>> " ".join("text text                  blabla bla ".split())
'text text blabla bla'

您也可以使用re.sub

>>> import re
>>> re.sub(" +"," ","text text                  blabla bla ").strip()
'text text blabla bla'

joinre.findall

>>> ' '.join(re.findall("[^ ]+","text text                  blabla bla "))
'text text blabla bla'

答案 1 :(得分:2)

拆分字符串,然后每次加入一个空格

" ".join(myString.split())

(其中myString是要清理的字符串)

答案 2 :(得分:2)

您可以使用regular expression

>>> import re
>>> s = "text text                  blabla bla "
>>> re.sub(r'\s+', ' ', s.strip())
'text text blabla bla'

此处,s.strip()删除前导和尾随空格,r'\s+'匹配一个或多个空格的序列(然后用单个空格替换)。

答案 3 :(得分:0)

是的,替换不起作用。 使用正则表达式和strip()删除空格。

e.g。

import re
s = "text text                  blabla bla "
re.sub("[  ]+"," ", s).strip()
'text text blabla bla'

OR 使用溢出。

" ".join(s.split())
'text text blabla bla'