2013-05-10 60 views
-2

我有一个这样的的NSString:如何以编程方式分割一个变量?

Variable1 = x;\n Variable2 = y;\n variable3 = z;\n variable4 = t 

做出了明确的问题,我显示我的NSString的NSLog的:在NSLog的

NSLog(@"%@",myNsString); 

Variable1 = x 
    Variable2 = y 
    variable3 = z 
    variable4 = t 

,我想分开他们进入不同的变量。

+0

myNsString究竟是什么? – David 2013-05-10 21:57:11

+2

您需要解析字符串。按'\ n'分割,然后按'='分隔每个结果。每个数组的第二部分将是值,而第一部分是键名。如果有什么事情你不知道该怎么做,让我知道,我会将这个评论扩展到对代码的回应(但是需要等待一段时间)。 – 2013-05-10 21:57:53

+0

使用componentsSeparatedByString方法 – Felix 2013-05-10 21:59:15

回答

2

所以它听起来像你想在单独的字符串中的x,y,z和t值?你有他们在一个巨大的字符串?请尝试更清楚如果你需要帮助,但这应该让你开始朝着正确的方向:

NSString *yourNSString = @"Variable1 = x;\n Variable2 = y;\n variable3 = z;\n variable4 = t"; 

NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:@"=;"]; 
NSArray *splitter = [yourNSString componentsSeparatedByCharactersInSet:set]; 
NSString *x; 
NSString *y; 
NSString *z; 
NSString *t; 

for(int i = 0; i<splitter.count ; i++) 
{ 
    if(i==1) 
    { 
     x = [[splitter objectAtIndex:i]stringByReplacingOccurrencesOfString:@" " withString:@""]; 
    } 
    else if(i==3) 
    { 
     y = [[splitter objectAtIndex:i]stringByReplacingOccurrencesOfString:@" " withString:@""]; 
    } 
    else if(i==5) 
    { 
     z = [[splitter objectAtIndex:i]stringByReplacingOccurrencesOfString:@" " withString:@""]; 
    } 
    else if(i==7) 
    { 
     t = [[splitter objectAtIndex:i]stringByReplacingOccurrencesOfString:@" " withString:@""]; 
    } 
} 
+0

这是我的问题的完美答案。谢谢。 – ananana 2013-05-11 09:56:40

相关问题