Сталкивался кто-нибудь с проблемой поиска отсутсвия суррогатной пары у символа в строках utf8?
Как можно найти в строке не полный utf8 символ и удалить его?
utf8 суррогатная пара
Модератор: Модераторы
-
alex208210
- постоялец
- Сообщения: 207
- Зарегистрирован: 12.05.2010 13:16:51
- Vapaamies
- постоялец
- Сообщения: 292
- Зарегистрирован: 24.07.2012 22:37:59
- Откуда: Санкт-Петербург
- Контактная информация:
В правильно сформированном UTF-8 кодовые точки U+1xxxx должны кодироваться 4-байтными последовательностями без суррогатных пар. Не все реализации UTF-8 поддерживают эту возможность, как понимаю. Кодирование суррогатных пар как есть -- не UTF-8, а CESU-8, символы U+1xxxx занимают по 6 байт вместо 4-х.
4-байтный символ UTF-8 начинается с байта с $F в старших разрядах: StartingByte and $F8 = $F0.
4-байтный символ UTF-8 начинается с байта с $F в старших разрядах: StartingByte and $F8 = $F0.
