Jsoup HTML パーサーを使用して Web サイトからサムネイル URL を取得しようとしています。60x60.jpg(または png) で終わるすべての URL を抽出する必要があります (すべてのサムネイル URL はこの URL で終わります)。
問題は、通常のJavaプロジェクトで動作するようになることですが、Androidでは動作しません。(正規表現の問題)
このコードは Java プロジェクトで機能します。
List<String> urls = new ArrayList<String>();
Document doc = Jsoup.connect("http://example.com").get();
Elements pngs = doc.select("img[src~=(60x60).(png|jpg)]");
for (Element img : pngs) {
String url = img.absUrl("src");
{
if (!urls.contains(url)) {
urls.add(url);
}
}
}
そしてurls配列を印刷します..Androidプロジェクトではなく、Javaで動作します。
Android で機能する唯一の正規表現はこれだけです
Elements pngs = doc.select("img[src$=.jpg]");
Androidでは問題なく動作します...jpgで終わるすべてのリンクは必要ありませんが
使ってみた
Elements pngs = doc.select("img[src~=(60x60)\\.(png|jpg)]");
.(png|jpg) の前に 1 つのスラッシュがあっても、まだ良くありません。
正規表現の問題ですか?それはAndroidまたは何とは異なりますか?通常のJavaプロジェクトで動作するため、パーサーの問題ではありません..