在JSON字符串中检索破折号( - )之前和之后的数据?

时间:2015-10-05 05:59:23

标签: ios json nsstring

我想知道可以在检索到的json字符串中的“破折号”之前和之后检索数据。例如,这是json字符串:

    {
        "position" : "1", 
        "artist" : "Avicii - Stories", 
        noWeeks" : "32", 

        }, 

我想制作一个没有“ - 故事”的NSString“Avicii”。相反,我想要另一个没有“Avicii - ”的NSString“Stories”

5 个答案:

答案 0 :(得分:1)

试试这个

NSArray *arr =[@"Avicii - Stories" componentsSeparatedByString:@" - "];

注意

-之前和之后应该有空格,否则它将不起作用。如果字符串为Avicii- StoriesAvicii -StoriesAvicii-Stories,则此方法无法分离组件并返回nil数组。所以我建议使用上面这样的方法 -

NSArray *arr =[@"Avicii - Stories" componentsSeparatedByString:@"-"];

并删除空格。

答案 1 :(得分:1)

如果它已经在你的字符串中

choice-1

NSString *GetAvicii = @"Avicii - Stories"
NSArray  *getArra = [GetAvicii componentsSeparatedByString:@" - "];
NSString *finalStr = getArra.firstObject; // or use getArra[0] // or use [getArra objectAtIndex:0];

答案 2 :(得分:1)

这里dict1是你的json字典数据。

NSString *str=[[[dict1 objectForKey:@"artist"] componentsSeparatedByString:@"-"] objectAtIndex:0];

str包含字符串“Avicii”

答案 3 :(得分:1)

你可以这样做。

NSString *artist = @"Avicii - Stories";
NSArray *artistArray = [artist componentsSeparatedByString:@" - "];
NSString *subString = [artistArray objectAtIndex:0];
NSLog(@"%@",subString);

答案 4 :(得分:1)

NSArray *artistInfo = [@"Avicii - Stories" componentsSeparatedByString:@" - "];

NSString *singer = artistInfo.firstObject;
NSString *song = artistInfo.lastObject;