删除不在引号内的空格

时间:2013-01-27 15:00:48

标签: python whitespace

  

可能重复:
  Python Regular expression must strip whitespace except between quotes

我需要删除文件中不在单引号或双引号内的所有空格(即不在字符串中)。

我找到了这个解决方案 Python Regular expression must strip whitespace except between quotes

但仅适用于双引号

1 个答案:

答案 0 :(得分:3)

删除引号外的空格:

import re

parts = re.split(r"""("[^"]*"|'[^']*')""", text)
parts[::2] = map(lambda s: "".join(s.split()), parts[::2]) # outside quotes
print("".join(parts))