Mam skrypt Perla, który jest wywoływany przez osoby trzecie, aby wysłać mi nazwiska osób, które zarejestrowały moje oprogramowanie. Jedna z tych stron koduje nazwy w UTF-8, więc odpowiednio dostosowałem mój skrypt, aby odszyfrować kodowanie UTF-8 do ASCII za pomocą Encode :: decode_utf8 (...).Jak przekonwertować znaki spoza ASCII zakodowane w UTF8 na równoważnik ASCII w Perlu?
Zwykle działa dobrze, ale co 6 miesięcy jedna z nazw zawiera znaki cyrylicy, greki lub rumuńskie, więc dekodowanie nazwy powoduje powstawanie znaków śmieci, takich jak "ПоÐ'Ñ € Ð ° жР° нÑкР° Ñ ". Muszę skontaktować się z klientem i poprosić go o "łacińską wersję postaci" jego nazwiska w celu wydania kodu rejestracyjnego.
Więc jest jakiś moduł Perl, które mogą wykryć, czy istnieją takie znaki i automatycznie przekłada je do najbliższego ASCII w razie potrzeby?
Wygląda na to, że mogę używać Lingua :: Cyrillic :: Translit :: ICAO plus Lingua :: DetectCharset do obsługi cyrylicy, ale wolę coś, co działa również z innymi zestawami znaków.
Właśnie tego szukałem - dzięki! :-) –