Подтвердить что ты не робот

Как удалить символы из NSString после определенного NSString

У меня есть строка следующим образом

NSString str1 = @"Hello your bal = 68094";

и я хочу удалить все символы после "=" символов в строке.

Может ли кто-нибудь дать мне решение для этого?

4b9b3361

Ответ 1

Попробуйте следующее решение:

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: Если вы уверены, что у вас будет 2 "=" в вашей строке, то

NSString *[email protected]"Hello your balance = 60094 and your id = rt456";
NSRange range = [str1 rangeOfString:@"=" options: NSBackwardsSearch];
NSString *newString = [str1 substringFromIndex:(range.location+1)];
NSLog(@"%@",newString);

Если он содержит пробелы, лучше обрезать строку.

Ответ 2

Возможно, это не лучшее решение, но вот оно:

NSString *[email protected]"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 

Надеюсь, что это поможет