Asosiy qismga ötiş
yangiça

2 daqiqa öqişga

Yangi harflar bilan qidiruv va saralaş: dasturçilar uçun izoh

Islohot matnni özgartirdi, demak u bazani, qidiruvni va saralaşni ham özgartirdi. Quyida — deyarli hamma duç keladigan törtta xato.

Qidiruv heç narsa topmaydi

Bazada Toshkent, foydalanuvçi Toşkent deb yozadi — mos keliş nolga teng. Yeçim bitta: soliştirişdan oldin sörovni ham, indeksni ham bitta şaklga keltiring. Qaysi biriga — muhim emas, muhimi ikkalasiga bir xil.

Saralaş notöğri işlaydi

Odatiy saralaşda ö va ğ z dan keyin ketadi, çunki ularning kod raqami kattaroq. JavaScriptda Intl.Collator("uz-Latn"), PostgreSQLda COLLATE "uz-Latn-x-icu" kerak böladi.

Turkça i

Yangi harflar turk alifbosida ham bor, şuning uçun tr lokalini "öxşaş" deb oliş vasvasasi paydo böladi. Olmang: turk lokalida "i".toUpperCase() İ beradi, özbekçada esa I kerak. Faqat uz yoki lokalsiz.

Unicode normalizatsiyasi

ö bitta kodpoint bölib ham, o va qöşiluvçi belgi bölib ham keladi — ikkinçisi macOS fayllari uçun odatiy hol. Kiruvçi matnning hammasini normalize("NFC") orqali ötkazing, aks holda bir xil körinadigan ikki qator teng bölmay qoladi.

Apostroflar

Odamlar ', ’, `, ʻ va ʼ — hammasini yozadi. Qabul qilişda bittasiga keltiring, çiqarişda esa doim ʼ (U+02BC) körsating.