belli kana için geçerli ayırıcı işaretler birleştirerek orada, bu nedenle diyelim arasındaki mantıksal bir ilişki olduğunu "か" (ka) ve "が" (ga) - ga karakterdir dile getirdi.Japon kana karakterleri arasında farklı aksan işaretleri olan "mantıksal" dönüşümler yapmanın bir yolu var mı? Japonca'da
Herhangi bir doğal yol olup olmadığını merak ediyorum (Python'da, tercihen, unicode hakkında genel bir cevap olsa da), dile getirilen karakterleri, kendilerine ait olmayan eşdeğerlerine dönüştürmenin eşdeğerini yapmak ve tersi - latin komut dosyalarında geçerli olan lower()
yöntemine benzer. Aradığım şeyin bir örneği yapmak:
>>> devoice('が')
"か"
>>> voice('か')
"が"
>>> devoice('か')
"か"
>>> semivoice('は')
"ぱ"
>>> devoice('ぱ')
"は"
, en iyi yaklaşım ben satır, sütun ve dile getiren tarafından dizine bir arama tablosu oluşturmaktır ile gelip muktedir görünüyor, o zaman bak sahip olduğum karakteri yukarı ve doğru yönde çevir. Bunu yapmak için daha doğal bir yol olup olmadığını bilmek istiyorum.
>>> a = chr(0x304B) + chr(0x3099)
>>> b = chr(0x304C)
>>> print(a)
'が'
>>> print(b)
'が'
>>> a == b
False
Ben değil do olanlarla esas endişe duyuyorum:
potansiyel bir tuzak o karakterleri birleştirerek unicode onların tek codepoint eşdeğerine eşit karşılaştırmak görünmüyor geliyor bana olmasıdır Birleştirme işaretlerini algılamak ve yok etmek için yeterince kolay olduğu için aksanları birleştirmeyi içerir.
Not: ben de doğru davranış (u) ve ゔ
う
için ne olduğunu bilmek yeterli Japon fonolojisi anladığımdan emin değilim (vu - Nadir/eski) iyi olurdu neden yine, eğer orada Bunu yapmak için "doğal" bir yol vardı.
Teşekkür:
Muhtemelen bir ayrışma var olup olmadığını test etmek
unicodedata.decomposition()
kullanabilirsiniz! Diğer yöne ne dersin? Ben tercih edeceğini 'sesli ('\ u304b')' dönüş ' '\ u304c'' değil,'' \ u304b \ u3099''. – Paul@ Paul: –
İyi görünüyor :-) Hala o kısmı üzerinde çalışıyordu! Teşekkürler. Bir cevabı kabul etmeden önce hala bir gecikme var. – Paul