Ответ 1
Теперь, когда вопрос снова открыт, я передаю свой ответ здесь.
Короткий ответ на вопрос: "Почему они не просто сравнивают только строчные буквы, а не как верхний, так и нижний регистр, если они соответствуют большему количеству случаев, чем прописные?": он не соответствует больше пар символов, он просто соответствует различным парам.
Сравнение только прописных букв недостаточно, например. буква ASCII "I" и столица я с точкой "İ" ((char)304
, используемые в турецком алфавите) имеют разные прописные буквы (они уже имеют верхний регистр), но они имеют одну и ту же строчную букву "i". (Обратите внимание, что турецкий язык считает, что я с точкой и я без точки в виде разных букв, а не только буквы с акцентом, похожей на немецкий с ее Umlauts ä/ö/ü против a/o/u.)
Сравнивать только строчные буквы недостаточно, например. ASCII-букву "i" и маленькую точку "i" ((char)305
). У них разные строчные буквы (они уже строчные), но они имеют одну и ту же прописную букву "I".
И, наконец, сравните капитал я с точкой "İ" с небольшим бесцеремонным я "ı". Ни их верхние регионы ( "İ" , "I" ), ни их нижние регионы ( "i" и "ı" ) не совпадают, но нижний регистр их прописных букв одинаковый ( "I" ). Я нашел другой случай, если это явление, в греческих буквах "Θ" и "θ" (char 1012 и 977).
Таким образом, истинное нечувствительное к регистру сравнение не может даже проверять верхние и нижние регионы исходных символов, но должно проверять нижние регионы верхних строчек.