Analisando NSRegularExpression HTML
Eu estou tentando analisar uma página HTML usando NSRegularExpressions .. A página é uma repetição deste código html:
<code><div class="fact" id="fact66">STRING THAT I WANT</div> <div class="vote"> <a href="index.php?p=detail_fact&fact=106">#106</a> <span id="p106">246080 / 8.59 </span> <span id="f106" class="vote2"> <a href="#" onclick="xajax_voter(106,3); return false;">(+++)</a> <a href="#" onclick="xajax_voter(106,2); return false;">(++)</a> <a href="#" onclick="xajax_voter(106,1); return false;">(+)</a> <a href="#" onclick="xajax_berk(106); return false;">(-)</a></span> <span id="ve106"></span> </div> </code>
Então, eu gostaria de pegar a string entre o div
<code> <div class="fact" id="fact66">STRING THAT I WANT</div> </code>
Então eu fiz um regex que se parece com isso
<code><div class="fact" id="fact[0-9].*\">(.*)</div> </code>
Agora, no meu código, eu o implemento usando isto:
<code> NSString *htmlString = [NSString stringWithContentsOfURL:[NSURL URLWithString:@"http://www.myurl.com"] encoding:NSASCIIStringEncoding error:nil]; NSRegularExpression* myRegex = [[NSRegularExpression alloc] initWithPattern:@"<div class=\"fact\" id=\"fact[0-9].*\">(.*)</div>\n" options:0 error:nil]; [myRegex enumerateMatchesInString:htmlString options:0 range:NSMakeRange(0, [htmlString length]) usingBlock:^(NSTextCheckingResult *match, NSMatchingFlags flags, BOOL *stop) { NSRange range = [match rangeAtIndex:1]; NSString *string =[htmlString substringWithRange:range]; NSLog(string); }]; </code>
Mas não retorna nada ... Testei meu regex em Java e PHP e funciona muito bem, o que estou fazendo de errado?
obrigado