Я пишу некоторый код Java, который имеет дело с китайскими символами, и я получил некоторые неожиданные результаты - строки, которые должны быть равны, не были. Вот один из оскорбительных символов, что означает «шесть» (пиньинь: liù): 六. Этот символ может быть представлен любой из двух кодовых точек:
F9D1 в блоке: Идеограммы совместимости CJK
516D в блоке: CJK Унифицированные идеографы
В Википедии есть страница об этих диапазонах символов, а в коротком разделе об идеограммах совместимости упоминаются некоторые дубликаты, но в этом списке этот конкретный символ пропущен.
Вот мне и интересно:
- Есть ли где-нибудь список повторяющихся символов Юникода, чтобы я мог преобразовать строки перед тем, как сравнивать их?
- Это нормально, когда имеешь дело с символами CJK, или я сделал что-то еще не так?