2017-05-14 6 views
0

unicodedata.decompositionは、Unicode文字をコンポーネントに順次分解し、戻り値はスペースで区切られたコードポイントの文字列です。 例:標準ライブラリにunicodedata.decompositionと反対のものがありますか?

私は複数の特殊記号を持つUnicode文字で働いている
>>> unicodedata.decomposition("á") # 0061 is 'a' and 0301 is the 'acute accent' 
'0061 0301' 

(ベトナム、例えばE、O)と、常に所望の順序で分解しない(私はトーンマークを除去する必要はなく、他の発音区別符があればそれ)。

私はコードポイントから文字を構成できる関数を探しています。

>>> compose([0x0065, 0x0302]) # 'e', 'circumflex' 
'ê' 

ADDENDUM:私は私の特定の問題(ベトナム)を解く機能を書くことは自明であることを知っていますが、私は一般的な問題は、私の前に誰かによって解決されていることを前提に、この質問を掲載しましたおそらく標準ライブラリのどこかにあるでしょう。

答えて

1

答えはPythonのドキュメントに遠くあなたのリンクから、実際にはありませんが、それは以下の機能です:unicodedata.normalize

>>> unicodedata.normalize('NFC', '\u0065\u0302') 
'ê' 
+0

素晴らしいです。ありがとうございました。 –

関連する問題