:) 我不确定为什么下面的python代码也会删除空格,但确实如此。 有人可以解释一下如果不这样做我怎么能把它拉下来? 谢谢 ! :)
text = html
rules = [
{ r'>\s+' : u'>'},
{ r'\s+' : u' '},
{ r'\s*<br\s*/?>\s*' : u'\n'},
{ r'</(div)\s*>\s*' : u'\n'},
{ r'</(p|h\d)\s*>\s*' : u'\n\n'},
{ r'<head>.*<\s*(/head|body)[^>]*>' : u'' },
{ r'<a\s+href="([^"]+)"[^>]*>.*</a>' : r'\1' },
{ r'[ \t]*<[^<]*?/?>' : u'' },
{ r'^\s+' : u'' }
]
for rule in rules:
for (k,v) in rule.items():
regex = re.compile (k)
text = regex.sub (v, text)
print text
答案 0 :(得分:1)
正如您可以在文档中阅读:http://docs.python.org/library/re.html
\s
序列匹配所有空格。因此底部规则将删除所有空格。
答案 1 :(得分:0)
除了WoLpH的回答之外,你的前5个结尾是\s
的一些变体,并用最后不包含空格(除了换行符)的字符串替换它......