2014-01-23 68 views
0

我有一個包含HTML頁面的NSString。我會按名稱提取特定的標籤,並通過特定的屬性(此標籤的)來提取。 我用正則表達式作爲這個例子:從NSString中提取html標記和屬性

NSError *error = nil; 
    NSString *authParameter = nil; 
    NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"<form id=\"theIdOfForm\"*.*method=\"post\">" options:NSRegularExpressionCaseInsensitive error:&error]; 

    if (error == nil) { 
     NSTextCheckingResult *match = [regex firstMatchInString:aHtmlFirstResponse options:0 range:NSMakeRange(0, [aHtmlFirstResponse length])]; 

     if (match) { 
      NSString *formHtmlTag = [aHtmlFirstResponse substringWithRange:[match rangeAtIndex:0]]; 

} 

,但是,我怎麼能提取由名字從這個標記的屬性? 什麼是一個優雅和有效的方式來獲得這個? 我想避免導入一些HTML解析器庫。

+0

NSTextCheckingResult爲您提供了一個匹配範圍,允許您指定一個子字符串以從中提取碎片。在某些情況下,您需要將其與其他正則表達式分開。我更喜歡使用RegexKitLite,它使得表達式分析和結果提取更容易一些。 – mah

回答