如何在iOS中获取子字符串?

时间:2011-11-30 18:01:59

标签: iphone objective-c ios

我有一个包含一些文字的字符串:

 <p>ProductImage [height:60]</p>

我想从中提取60个? 60这​​只是一个任意值

1 个答案:

答案 0 :(得分:9)

您可以使用NSScanner,也可以使用NSRegularExpression进行搜索。

NSScanner* sc = [NSScanner scannerWithString:s];
int num;
[sc scanUpToCharactersFromSet:[NSCharacterSet decimalDigitCharacterSet] 
                   intoString:nil];
[sc scanInt:&num];

或者:

int num;
NSError* err = nil;
NSRegularExpression* r = [NSRegularExpression regularExpressionWithPattern:@"\\d+"
                                                                   options:0 
                                                                     error:&err];
// error-checking omitted
for (NSTextCheckingResult* match in [r matchesInString:s 
                                               options:0 
                                                 range:NSMakeRange(0, [s length])])
    num = [[s substringWithRange: [match range]] intValue];