Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to remove characters from NSString after specific NSString

Tags:

ios

nsstring

I am having a string as follows

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

and I want to remove all characters after "=" symbol encounters in string.

Can any one give me the solution for this?

like image 947
user968597 Avatar asked Mar 15 '12 10:03

user968597


2 Answers

Try the following solution:

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");
}

or

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");
}

Update for @geekay_gk: If you are sure that you would have 2 "=" in your string, then

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);

If it contains whitespace, it would be better to trim the string.

like image 101
Ilanchezhian Avatar answered Nov 08 '22 14:11

Ilanchezhian


Maybe not the best solution, but here it is:

NSString *str1=@"Hello your bal = 68094";
NSArray *tempArray = [str1 componentsSeparatedByString:@"="];
str1 = [tempArray objectAtIndex:0];
NSLog(@"%@", str1);

Output:

2012-03-15 11:21:01.249 TestApp[1539:207] Hello your bal 

Hope it helps

like image 9
Novarg Avatar answered Nov 08 '22 16:11

Novarg