2017-11-03 31 views
0

2つの文字列を比較する必要があります。 aaはPDFファイル(pdfminer/chardetを使用)から抽出され、bbはキーボード入力です。コンパウンドを作るために最初の文字列を正規化するにはどうすればよいですか?Python 3のUnicode文字列を正規化する方法

>>> aa = "ā" 
>>> bb = "ā" 
>>> aa == bb 
False 
>>> 
>>> aa.encode('utf-8') 
b'\xc4\x81' 
>>> bb.encode('utf-8') 
b'a\xcc\x84' 

答えて

0

あなたはunicodedata.normalizeで正規化:

>>> aa = b'\xc4\x81'.decode('utf8') 
>>> bb = b'a\xcc\x84'.decode('utf8') 
>>> aa 
'ā' 
>>> bb 
'ā' 
>>> aa == bb 
False 
>>> import unicodedata as ud 
>>> aa == ud.normalize('NFC',bb) 
True 
関連する問題