我有一個UTF-8編碼的文本文件,其中存在字節順序標記 - 也就是說,前幾個字節是EF BB BF 0D 0A 4D...
(它是由VS產生的Visual Studio解決方案文件2013)。Pyparsing,Python 3和Unicode字節順序標記
我試圖用PyParsing解析這個,使用parseFile()
方法和Python 3,在Python 2,我可以這樣做:
import pyparsing as pp
bom = pp.Optional(unicode(unichr(0xfeff)).encode('utf-8')).suppress()
得到一個可選的字節順序標記。但在Python 3中,unicode
和unichr
函數已經消失,因爲所有字符串都是Unicode。所以,我想這一點:
bom = pp.Optional(chr(0xfeff)).suppress()
這:
bom = pp.Optional('\ufeff').suppress()
但無論是文件的開頭匹配。我搜索了一段時間,但似乎無法找到任何相關的東西。
我該如何匹配(或者只是忽略!)Unicode字節順序標記?
不是Visual Studio解決方案文件XML嗎? –
恩,不是我正在看的那些。項目文件肯定是,但解決方案文件不是。 – Tom