Unicode 中的“第三种”大小写:标题大小写

评论区更精彩,长芝士了

https://devblogs.microsoft.com/oldnewthing/20241031-00/?p=110443

省流:

Unicode 中存在一种既有大小写区分,但又不是大写或小写形式的字符类型——标题大小写。

一些 Unicode 字符实际上是由多个字符组合而成的,例如,"dz" (U+01F1 LATIN SMALL LETTER DZ) 在图形上看起来像两个字符 "dz",但在某些语言(如匈牙利语)中被视为一个字母。这些组合字符有三种形式:大写、标题大小写和小写。

Unicode 编码中包含了四组这样的双字母组合(和一个三字母组合),每组都对应大写、标题大小写和小写形式。 这些组合的存在源于塞尔维亚-克罗地亚语,用于拉丁字母和西里尔字母之间的单一字符对应。

在处理文本时,需要考虑字符的具体大小写形式,而不是简单的基于子字符串的搜索。 对于需要区分不同语言和字母表的场景,需要使用地区敏感的搜索方法,才能得到正确的结果。

#Mark What has case distinction but is neither uppercase nor lowercase?
 
 
Back to Top
OKHK