如何从字符串中提取字符串

时间:2016-07-04 05:18:56

标签: objective-c nsstring nsmutablestring

如何分别存储高度值" 6英尺7英寸" 一根绳子6英尺,另一根绳子7英寸。

6和7将动态改变ft英寸将是恒定的。

3 个答案:

答案 0 :(得分:2)

我假设总会有一个空格字符分隔您想要提取的2个高度值。您可以使用-componentsSeparatedByString方法将字符串转换为由空格字符分隔的字符串数组

NSString *originalString = @"6ft 7inch";
NSArray *separatedStrings = [originalString componentsSeparatedByString:@" "];

NSString *feetString = separatedStrings[0];
NSString *inchString = separatedStrings[1];

如果可能存在中间没有空格的情况,则必须找到关键字符集的索引,然后使用它们创建子字符串。如果你需要知道如何

,请告诉我

答案 1 :(得分:0)

你只需要分割字符串。

NSString *combineString=@"6ft 7inch";
NSArray *stringsArray=[combineString componentsSeparatedByString:@" "];

if ([stringsArray count ]> 0) {

    //here is the ft string
    NSString *ftString=[stringsArray objectAtIndex:0];

    if ([stringsArray count ]> 1)
    {
        //here is the inch string
        NSString *inchString=[stringsArray objectAtIndex:1];
    }
    else
    {
        NSLog(@"Inch value not found");
    }

}
else
{
    NSLog(@"Empty String");
}

答案 2 :(得分:-1)

有很多方法可以实现这一目标。但是,在您的情况下,这是最简单的方法,因此在空格处分隔字符串:

NSString *string = @"6ft 7inch";
NSArray *components = [string componentsSeparatedByCharactersInSet:[NSCharacterSet whitespaceCharacterSet];