2011-11-30 70 views

回答

0

试试这个: -

NSArray *array = [string componentsSeperatedBy:@"good"]; 
    NSString *requiredString = [array objectAtIndex:0]; 
+0

这消除来自字符串的“好”。 –

3
NSString * a = @"iphone is good but.."; 
NSRange match = [a rangeOfString:@"good"]; 
NSString * b = [a substringToIndex:match.location+match.length]; 
4

尝试用下面的代码

NSString *str_good = @"iphone is good but..."; 
NSRange range = [str_good rangeOfString:@"good"]; 
str_good = [str_good substringToIndex:range.location+range.length]; 
+0

好的。这是一个优化的代码和+1! –

1

如果你想要的特定发生后删除该字符串的其余部分“但是”,你可以得到的范围内“而是”和修剪原始字符串下来

NSString * test = [NSString stringWithString:@"iphone is good but rest of string"]; 
NSRange range = [test rangeOfString:@"but"]; 
if (range.length > 0) { 
    NSString *adjusted = [test substringToIndex:range.location]; 
    NSLog(@"result %@", adjusted); 
} 

编辑 我们可以假设,搜索不希望削减的“奶油黄”,并且可以改变的范围包括“但”

NSRange range = [test rangeOfString:@" but"]; 
+0

这会在结果字符串中的“but”之前留下空格。 –

+0

@JoshCaswell谢谢,我意识到这一点。你提出了一个很好的观点,并让我在编辑时思考了这种情况。 “黄油是黄色的”。 –

0
NSArray *array = [string componentsSeparatedByString:stringToSearch]; 
NSString *requiredString; 
if ([array count] > 0) { 
    requiredString = [[array objectAtIndex:0] stringByAppendingString:stringToSearch]; 
} 
相关问题