2011-10-18 9 views
1

私は、私が取り組んでいるiPadアプリのUIWebViewで表示するために準備しているhtmlの束を持っています。 HTMLにはさまざまな種類のタグがありますが、削除する必要のある無関係のリンクを持つタグがたくさんあります。私はこのテキストをsqlite dbに入れようとしています。<a>タグをHTMLブロックからすべて削除して、残りの部分を残すにはどうしたらいいですか?

すべてのaタグをHTMLテキストから取り出す最良の方法は何ですか?私は正規表現は最良の方法ですが、私は正規表現をうまく理解できません。ブログはオンライン、この正規表現は、すべてのタグを除去するための方法であると述べた:

<(.|\n)*?> 

だから私はそれが特定のタグであることを調整するために行う必要があるだろうか?あるいは、私が取るべき別のアプローチがありますか?

ありがとうございます!

答えて

1

必要な正規表現は次のとおりです。

<a.*?>|</a> 

これは<a{something}> OR </a>の両方にマッチする - 削除する必要がタグ。私はObjectiveCの正規表現の機能についてはわかりませんが、Ronの投稿を見てください。

+0

それは、ありがとう! – Lizza

0

は、このコードを試してみてください。

NSString *str = @"Turn left onto <a>Sri Krishna Nagar Rd</a><div class=\"google_note\">Pass by <b landmarkid=\"0x39ed58475c24020f:0x170a2130a5880d5a\" class=\"dir-landmark\">California Academy of Visual Effects</b> <div class=\"dirseg-sub\">(on the left)</div>\n</div>"; 
str = [str stringByReplacingOccurrencesOfString:@"\\r\\n" withString:@""]; 
NSRange r; 
while ((r = [str rangeOfString:@"<[^>]+>" options:NSRegularExpressionSearch]).location != NSNotFound) 
    str = [str stringByReplacingCharactersInRange:r withString:@""]; 
NSLog(@"%@",str); 
+0

おかげさまで大変感謝しています。私はSOがaタグを隠すために私の投稿を編集したので、それは意味をなさないことに気付きました。私が行った必要があるのは、aタグです。あなたのコードがすべてのタグを取り出したようです。すべてのaタグを削除するために何かを調整することはできますか?あなたの助けをもう一度ありがとう! – Lizza

関連する問題