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