bakmak için:Python unicode normalleşme: Doğru u tercüme etmektir ' xb4' u' u0301' Aşağıdaki kod parçasında en
>>> import unicodedata
>>> from unicodedata import normalize, name
>>> normalize('NFKD', u'\xb4')
u' \u0301'
>>> normalize('NFKD', u'a\xb4a')
u'a \u0301a'
>>> normalize('NFKC', u'a\xb4a')
u'a \u0301a'
>>> name(u'\xb4'), name(u'\u0301')
('ACUTE ACCENT', 'COMBINING ACUTE ACCENT')
Ben davranıştır u' \u0301'
için u'\xb4'
çevirmek için eğer anlamaya çalışıyorum doğru. Neden akut aksanı bir boşlukla birleştiriyor? Neden u \xb4
'u çevirir? fileformat numaralı telefondan ACUTE ACCENT
'un SPACING ACUTE
olarak adlandırıldığını görüyoruz. Bunu sadece imleci yazılmasını yerine şu karakter için bekleyen hareket etmeliyiz anlamına geliyordu, düşünce
UPD:. Vaka birisi ilgileniyor burada, bir liste ise Unicode karakterleri o NFKC normalleştirme bir boşluk var sonra başlangıç: http://pastebin.com/Z99r5AK9
Çok ilginç, teşekkürler! – newtover
U + 00B4 ACENTE ACCENT ve U + 02CA MODIFIER LETTER ACUTE ACCENT, farklı karakterlerdir ve “aynı şekilde üretilmeleri” beklenmemelidir. İlki yazı tiplerinde çok daha sık görülür. Her ikisi de mevcut olduğunda, genellikle benzer veya aynı görünürler, ancak Unicode Standardında tanımlanan farklı özelliklere sahiptirler (örneğin, genel kategori Sembol, Değiştirici ile Mektup, Değiştirici). Ve örneğin, Doulos SIL yazı tipinde, glifleri görünüşte benzerdir, ancak ilerleme genişlikleri farklıdır; ve MingLiU'da, yamaçlar çok farklıdır. –
@ JukkaK.Korpela: Ben düzeltilmeyi bekliyorum; Bağlamı yanlış anlamış olmalıyım, o kısmı kaldıracağım. –