如何去掉这个特殊字符?
我在尝试把文件中的行合并时,发现了以下内容:
word1 word2
word1 word2
我不明白为什么这些行没有被合并,所以我在vim中打开了文件,并使用了 :set list
来查看是否有特殊字符,结果我发现了这个:
word1 <feff>word2
word1 word2
我不太确定如何用Python来清理这个词。有没有什么建议,能告诉我这个字符可能是什么,以及如何清理它?
2 个回答
1
你试过用 mytext.split(string.whitespace)
吗?
32
U+FEFF是一个叫做字节顺序标记(Byte Order Mark)的字符,它应该只出现在文档的开头。在文档中,它应该被当作一个零宽非断行空格
来处理。如果这个字符造成了问题,你可以像处理其他字符一样把它删除掉:
>>> s = u'word1 \ufeffword2'
>>> s = s.replace(u'\ufeff', '')
>>> s
u'word1 word2'
(在Python 3.1或3.2中,字符串前面的u
可以去掉)