将一个字符串分成不同的名称,然后重新排序 - iPhone

时间:2010-11-04 14:26:17

标签: iphone objective-c string

基本上我有一个值为

的字符串

李小龙,成龙,Micky Rourke,Vinnie Jones,

我想做的是将上述内容转换为:

Lee,B.,Chan,J.,Rourke,M.,Jones,V。

我确信这可以做到,但我对字符串操作和iPhone开发完全陌生。 NSScanner看起来很有用,但在阅读完文档之后,我仍然不确定如何做到这一点。

1 个答案:

答案 0 :(得分:2)

这是一个不可能解决的问题。想想像“van der Something”这样的名字或者有两个姓氏的名字。多个名字怎么样?那些完全(给定,中间,家庭)名字的人?那些具有极长多字名称的人呢?有许多国籍,西方文化中通常被称为“基督徒名字”的格式绝不是多数或任何一种标准。

一般情况下,您可以使用 - [NSString componentsSeparatedByString:@“”](将空格作为分隔符)来分隔“标记”(单词),这会为您提供一系列子字符串,但您可能需要提供额外的UI,允许用户更正任何不遵循传统Westerner名称样式(名字姓氏)的名称。

对于重新排序,您可以使用NSMutableArray的many -sort ...方法或NSArray的many -sortedArrays ...方法轻松地对数组进行排序。文档是你的朋友。