2016-05-17 7 views
0

ANSII文字をUNICODE(シンハラ)に置き換える必要があります。我々は、n + ANSII入力としてUU使用している場合、私は、通りが続くことPython 3 unicode文字列のZWJエラーを置き換えます。

for i in range (len(charansi)): 
    for j in range (len(charUni)): 
     s = charansi[i] + ansimod[j] 
     v = charUni[i] + modUni[j] 
     textSource = textSource.replace(s, v) 

を行うためにループでリストを使用し、それは、Unicodeアウトプットとしてනූ与える必要があります。しかし、その代わりに、それは、より多くのを明確にするためにූන

を与える

charansi = n 
ansimod = uu 
charUni = න 
modUni = ූ 

このනをしてූスペースなし加入しなければなりません。私はZWJ(\ u200D)がここで役割を果たしていると思います。だから私は試しました

v = u"\u200D".join((consonantsUni[i], vowelModifiersUni[j])) 

は同じ結果を与えます。

この問題を解決するにはどうすればよいですか?

答えて

0

あなたの質問は少し混乱ですが、これは単に作品:

#coding:utf8 
charansi = 'n' 
ansimod = 'uu' 
charUni = 'න' 
modUni = 'ූ' 

v = s.replace(charansi+ansimod,charUni+modUni) 
print(v) 

出力:これはあなたが望むものではない場合

නූ 

の問題の実例を作成します。

また、次のように使用して文字をより明確にすることもできます。少なくとも私のブラウザでは、修飾子はうまく表示されませんでした。

charUni = '\N{SINHALA LETTER DANTAJA NAYANNA}' 
modUni = '\N{SINHALA VOWEL SIGN DIGA PAA-PILLA}' 
+0

答え@マークのverymuchよりも、私はUbuntu端末にもレンダリングエラーがあることがわかりました。 – PVGM

関連する問題