При условии Unicode и нечувствительности к регистру, шаблон «..» должен соответствовать «FfIsS»?

Звучит как шутка, но я могу это доказать.

Предположения:

Точка соответствует любому отдельному символу.Совпадения с учетом регистра символовs если и только если это соответствуетs.toUpperCase().

Все следующее довольно логично и верно в Java:

"ffi".matches(".") ЛАТИНСКАЯ МАЛЕНЬКАЯ ЛИГАТУРА FFI (U + FB03) - это символ, поэтому он должен соответствовать"ß".matches(".") LATIN SMALL LETTER SHARP S (U + 00DF) - символ, поэтому он должен соответствовать"ffi".toUpperCase().equals("FFI") по стандарту Unicode (нет заглавных лигатур FFI)"ß".toUpperCase().equals("SS") по стандарту Unicode (есть заглавная S, но она не привыкает)"FfI".toUpperCase().equals("FFI") очевидно"sS".toUpperCase.equals("SS") очевидно

Таким образом, предполагая, что первая точка в регулярном выражении означает а второй дляß, регулярное выражение должно соответствовать "FFISS" и из-за нечувствительности к регистру также "FfIsS".

I действительно Надеюсь, что-то не так, в противном случае регулярные выражения станут довольно непригодными.

Вопросы:

Что не так с моим "доказательством"?Что означает «без учета регистра», если мое второе предположение не выполняется?

Ответы на вопрос(2)

Ваш ответ на вопрос