Многие последовательности закодированных символов Unicode имеют одинаковое визуальное представление и одинаковое вычислительное значение.
Символ ñ можно кодировать двумя способами:
U+00F1: ñ (LATIN SMALL LETTER N WITH TIDLE)
или
U+006E: n (LATIN SMALL LETTER N)
U+0303: ~ (COMBINING TILDE)
Это создает 10 различных последовательностей байтов, которые отображаются как:
U+00F1 in UTF-8, UTF-16LE, UTF-16BE, UTF-32BE, UTF32-LE
U+006E followed by U+0303 UTF-8, UTF-16LE, UTF-16BE, UTF-32BE, UTF32-LE
Есть ли какой-нибудь простой способ сравнить строки Unicode (я доволен символами Unicode, которые были декодированы из различных представлений UTF) и выяснить, что они одинаковы? То есть я хочу что-то, что говорит мне, что U + 00F1 совпадает с U + 0303 U + 006E
Спасибо.