我有一个字符串如下
NSString str1 = @"Hello your bal = 68094";
Run Code Online (Sandbox Code Playgroud)
我想在字符串中遇到"="符号后删除所有字符.
任何人都可以给我解决方案吗?
Ila*_*ian 71
尝试以下解决方案:
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");
}
Run Code Online (Sandbox Code Playgroud)
要么
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");
}
Run Code Online (Sandbox Code Playgroud)
更新@geekay_gk:如果你确定你的字符串中有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);
Run Code Online (Sandbox Code Playgroud)
如果它包含空格,那么修剪字符串会更好.
也许不是最好的解决方案,但这里是:
NSString *str1=@"Hello your bal = 68094";
NSArray *tempArray = [str1 componentsSeparatedByString:@"="];
str1 = [tempArray objectAtIndex:0];
NSLog(@"%@", str1);
Run Code Online (Sandbox Code Playgroud)
输出:
2012-03-15 11:21:01.249 TestApp[1539:207] Hello your bal
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你