如何解析 NSString
How to parse a NSString
字符串是 myAgent(9953593875).Amt:Rs.594
,想从中提取 9953593875
。这是我尝试过的:
NSRange range = [feDetails rangeOfString:@"."];
NSString *truncatedFeDetails = [feDetails substringWithRange:NSMakeRange(0, range.location)];
NSLog(@"truncatedString-->%@",truncatedFeDetails);
这输出:truncatedString-->AmzAgent(9953593875)
喜欢
第一步
//先根据.
拆分字符串
例如
NSString *value = @"myAgent(9953593875).Amt:Rs.594.How I get 9953593875 only";
NSArray *arr = [value componentsSeparatedByString:@"."];
NSString * AmzAgent = [arr firstObject]; // or use [arr firstObject];
NSLog(@"with name ==%@",AmzAgent);
在这里你得到myAgent(9953593875)
的输出
第 2 步
在这里使用像
这样的替换字符串
AmzAgent = [AmzAgent stringByReplacingOccurrencesOfString:@"myAgent("
withString:@""];
AmzAgent = [AmzAgent stringByReplacingOccurrencesOfString:@")"
withString:@""];
NSLog(@"final ==%@",AmzAgent);
最后你得到输出 9953593875
或者你这样做:
NSString *string = @"myAgent(9953593875).Amt:Rs.594.";
NSRange rangeOne = [string rangeOfString:@"("];
NSRange rangeTwo = [string rangeOfString:@")"];
if (rangeOne.location != NSNotFound && rangeTwo.location != NSNotFound) {
NSString *truncatedFeDetails = [string substringWithRange:NSMakeRange(rangeOne.location + 1, rangeTwo.location - rangeOne.location - 1)];
NSLog(@"%@",truncatedFeDetails);
}
试试这个
NSString *str = @"myAgent(9953593875).Amt:Rs.594.";
NSRegularExpression *regex = [NSRegularExpression
regularExpressionWithPattern:@"(?<=\()\d+(?=\))"
options:NSRegularExpressionCaseInsensitive
error:nil];
NSString *result = [str substringWithRange:[regex firstMatchInString:str options:0 range:NSMakeRange(0, [str length])].range];
//result = 9953593875
字符串是 myAgent(9953593875).Amt:Rs.594
,想从中提取 9953593875
。这是我尝试过的:
NSRange range = [feDetails rangeOfString:@"."];
NSString *truncatedFeDetails = [feDetails substringWithRange:NSMakeRange(0, range.location)];
NSLog(@"truncatedString-->%@",truncatedFeDetails);
这输出:truncatedString-->AmzAgent(9953593875)
喜欢
第一步
//先根据.
例如
NSString *value = @"myAgent(9953593875).Amt:Rs.594.How I get 9953593875 only";
NSArray *arr = [value componentsSeparatedByString:@"."];
NSString * AmzAgent = [arr firstObject]; // or use [arr firstObject];
NSLog(@"with name ==%@",AmzAgent);
在这里你得到myAgent(9953593875)
第 2 步
在这里使用像
这样的替换字符串AmzAgent = [AmzAgent stringByReplacingOccurrencesOfString:@"myAgent("
withString:@""];
AmzAgent = [AmzAgent stringByReplacingOccurrencesOfString:@")"
withString:@""];
NSLog(@"final ==%@",AmzAgent);
最后你得到输出 9953593875
或者你这样做:
NSString *string = @"myAgent(9953593875).Amt:Rs.594.";
NSRange rangeOne = [string rangeOfString:@"("];
NSRange rangeTwo = [string rangeOfString:@")"];
if (rangeOne.location != NSNotFound && rangeTwo.location != NSNotFound) {
NSString *truncatedFeDetails = [string substringWithRange:NSMakeRange(rangeOne.location + 1, rangeTwo.location - rangeOne.location - 1)];
NSLog(@"%@",truncatedFeDetails);
}
试试这个
NSString *str = @"myAgent(9953593875).Amt:Rs.594.";
NSRegularExpression *regex = [NSRegularExpression
regularExpressionWithPattern:@"(?<=\()\d+(?=\))"
options:NSRegularExpressionCaseInsensitive
error:nil];
NSString *result = [str substringWithRange:[regex firstMatchInString:str options:0 range:NSMakeRange(0, [str length])].range];
//result = 9953593875