这是我的代码它在OS名称之后打印了大量空间:如何剥离空白区域?我试图使用拆分,我猜不会以正确的方式使用它
操作系统名称:Microsoft Windows 7 Professional
请参阅Microsoft知识库文章2344941
#!/usr/bin/env python
import sys, re, os
lineContains = re.compile('.*OS Name.*')
lineHas = re.compile('.*OS Version.*')
filename = open("system-info.txt", 'r')
for line in filename:
if lineContains.match(line):
''.join(line.split())
print line
if "Windows 7" in line:
print 'See the Microsoft Knowledge Base article 2344941'
else:
print 'See the Microsoft Knowledge Base article 2550978'
filename.close()
答案 0 :(得分:0)
您可以使用REGEX去除空白区域。 myString.replaceAll("\\s+","")
将消除多个空格。但是,有些空格不一定是"空格"。对于这些,您可以使用myString.replaceAll("\\W+", "")
。
答案 1 :(得分:0)
我的建议是使用line = re.sub(r':[\t ]+',r': ',line)
。这将占用任何冒号和所有空格,并用一个冒号和一个空格替换它,这样你就可以在每个冒号之后保留一定数量的空格。