Unicode字符串长度(重新访问)

时间:2015-11-07 05:34:35

标签: unicode

我知道这个问题的各种化身已被多次询问和回答堆栈溢出,但我能找到的最接近的匹配仅关注unicode组合(例如:character + diacritic),最终会踩到真正的至少关于如何计算unicode字符串长度的问题。

我的示例字符串不包含任何组合字符:

http://static.inky.ws/image/5413/Screen%20Shot%202015-11-07%20at%2012.05.05%20AM.png

为什么 - [NSString length]告诉我每个字符串(每个字符串,只是一个没有额外组合字符的单个可打印字符)的长度为2?

Apple -[NSString length]的文档说:

  

接收器中的Unicode字符数。此数字包括组合字符序列的各个字符,因此您无法使用此属性来确定打印时字符串是否可见或显示的时间长度。

根据该定义,似乎可以合理地断定每个测试字符串的长度为1。

显然我错了。我只需要有人解释为什么

(这个问题不是"字符串中的字符数(不是字节数)"的副本,因为该线程中的OP没有询问为什么。 )

0 个答案:

没有答案