如何在特定的NSString之后从NSString中删除字符
我有一个string如下
NSString str1 = @"Hello your bal = 68094";
我想在string中遇到“=”符号后删除所有字符。
任何人都可以给我这个解决scheme吗?
尝试以下解决scheme:
NSString *str1 = @"Hello your bal = 68094"; NSRange range = [str1 rangeOfString:@"="]; if (range.location != NSNotFound) { NSString *newString = [str1 substringToIndex:range.location]; NSLog(@"%@",newString); } else { NSLog(@"= is not found"); }
要么
NSString *str1 = @"Hello your bal = 68094"; NSRange range = [str1 rangeOfString:@"="]; if (range.location != NSNotFound) { NSString *newString = [str1 substringWithRange:NSMakeRange(0, range.location)]; NSLog(@"%@",newString); } else { NSLog(@"= is not found"); }
@geekay_gk的更新:如果你确定你的string里有2个“=”,那么
NSString *str1=@"Hello your balance = 60094 and your id = rt456"; NSRange range = [str1 rangeOfString:@"=" options: NSBackwardsSearch]; NSString *newString = [str1 substringFromIndex:(range.location+1)]; NSLog(@"%@",newString);
如果它包含空格,修剪string会更好。
也许不是最好的解决scheme,但这里是:
NSString *str1=@"Hello your bal = 68094"; NSArray *tempArray = [str1 componentsSeparatedByString:@"="]; str1 = [tempArray objectAtIndex:0]; NSLog(@"%@", str1);
输出:
2012-03-15 11:21:01.249 TestApp[1539:207] Hello your bal
希望能帮助到你