如何计算字符串在长NSString中的次数?

时间:2013-12-13 03:30:36

标签: ios objective-c nsstring

我有以下长NSString

    <span class='page-numbers current'>1</span>
    <a class='page-numbers' href='http://www.testurl1.com'>2</a>
    <a class='page-numbers' href='http://www.testurl2.com'>3</a>
    <a class='page-numbers' href='http://www.testurl3.com'>4</a>

我想知道字符page-numbers在此NSString中的次数。有没有一种简单的方法可以做到这一点?

3 个答案:

答案 0 :(得分:5)

尝试使用以下代码获取计数

NSArray *array = [string componentsSeparatedByString:@"page-numbers"];
int count = [array count]-1;

我认为以上代码对您有用..

答案 1 :(得分:0)

你可以用一些JS脚本来做到这一点。

eg: documents getelementbyid

然后,你可以得到计数。

ps:js脚本应该在webview中运行。

答案 2 :(得分:0)

使用NSRegularExpression,效率更高,更清晰。

NSError *error = NULL;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"page-numbers"
                                                           options:NSRegularExpressionCaseInsensitive error:&error];
NSUInteger numberOfMatches = [regex numberOfMatchesInString:string
                                                    options:0
                                                      range:NSMakeRange(0, [string length])];