有谁确切知道 NSString 的新(iOS 6)lowercaseStringWithLocale 方法是做什么的?文档非常简陋,我在 Apple的开发者论坛中没有找到对这种方法的单一引用。
在本地化我的应用程序时,我有兴趣将字符串文件中的单词在句子中出现时更改为小写——德语版本除外,其中某些单词应始终保持大写。这就是这个方法的目的吗?还是完全不同的东西?
有谁确切知道 NSString 的新(iOS 6)lowercaseStringWithLocale 方法是做什么的?文档非常简陋,我在 Apple的开发者论坛中没有找到对这种方法的单一引用。
在本地化我的应用程序时,我有兴趣将字符串文件中的单词在句子中出现时更改为小写——德语版本除外,其中某些单词应始终保持大写。这就是这个方法的目的吗?还是完全不同的东西?
中的讨论lowercaseString
可能会有所启发:
注意:此方法执行规范(非本地化)映射。它适用于需要稳定结果而不取决于用户的区域设置偏好的编程操作。对于呈现给用户的字符串的本地化大小写映射,请使用相应的
lowercaseStringWithLocale:
方法。
因此,如果您出于不区分大小写的数据库查找等目的计算字符串的小写版本,请使用lowercaseString
. 如果您打算向用户显示结果,请使用lowercaseStringWithLocale
.
请注意,lowercaseStringWithLocale
不会根据实际单词来决定单词是否应该小写。它会做你要求它做的事情,并且不会质疑你的动机。
小写/大写确实取决于语言环境。我知道的唯一例子(它是一个杀手,是许多全球化错误的根源)是土耳其语 i 问题。请参阅此处了解概述: http: //www.codinghorror.com/blog/2008/03/whats-wrong-with-turkey.html
基本上,当你大写“Hi”时,你会得到“HI”,除了土耳其,你会得到“Hİ”
同样,当您将“HI”小写时,您会得到“hi”,但土耳其除外,您会得到“hı”