2011-05-21 66 views
0

我可以將一個網頁作爲長字符串拉入我的代碼中。現在我想要刪除<table>標記之前和<table>標記之後的所有內容 - 所以我只保留表格本身。從Web輸出中提取表格

我在想使用NSScanner或regexp。您認爲哪些代碼更有效/更易於管理?該頁面還可能(將來)包含兩個表格,我想要提取每個表格(一個接一個),以便在我的視圖中顯示。

任何想法?

並提前致謝!
Kolya

+0

有關的NSXMLParser什麼都串? – 2011-05-21 03:07:29

回答

0

所以 - 我使用NSScanner。

// calling a service to extract the webpage as a string.. 
NSString *thewebpage = [NSString stringWithFormat:@"%@", [self getthewebstring]]; 
NSString *tmpwebpage = @""; 

// Assign 'theScanner' to class NSScanner 
NSScanner *theScanner = [NSScanner scannerWithString:tmpwebpage]; 

// find start of TABLE 
[theScanner scanUpToString:@"<h2>Table Header</h2>" intoString:nil]; 
[theScanner scanUpToString:@"</table>" intoString:&tmpwebpage]; 
NSString *myTableOnlyData = [tmpwebpage stringByAppendingString:@"</table>"]; 

這對我很好。
柯里亞

1

嗨,你可以使用此代碼

- (NSMutableArray *)stringFilter:(NSString *)targetString { 

     NSScanner *theScanner; 
     NSString *text = nil; 

     theScanner = [NSScanner scannerWithString: targetString]; 

     while ([theScanner isAtEnd] == NO) { 

      [theScanner scanUpToString:@"<table>" intoString:NULL] ; 

      [theScanner scanUpToString:@"</table>" intoString:&text] ; 

      [tempArray addObject:text]; 

     } 

     return tempArray; 

    } 

臨時數組將包含在表標籤got help from this site