我試圖從一個網站使用Jsoup HTML解析器得到縮略圖的URL 我需要提取所有以60x60.jpg(或PNG )(所有的縮略圖URL以這個URL結尾)正則表達式在Java項目,而不是在Android項目
問題是我得到它在一個普通的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);
}
}
}
,然後打印網址陣列..它的工作原理在Java中,而不是在Android項目。
在Android版工作唯一的正則表達式是僅此
Elements pngs = doc.select("img[src$=.jpg]");
它好的工作在Android ..雖然我並不需要所有的鏈接以.jpg
我嘗試使用結束
Elements pngs = doc.select("img[src~=(60x60)\\.(png|jpg)]");
仍然不好,甚至有一個斜槓(PNG | JPG)
所以在正則表達式中的問題?它在Android或不同的工作?它不能解析器的問題,因爲它在一個普通的Java項目上工作..
Tnx。
如果'IMG [來源$ = JPG]'應該是一個正則表達式,那麼它肯定不會做你希望它做的事。它與字符串「img」相匹配,後面緊跟一個字符,可以是's','r','c','$','=','','j','p'或'g '。 – 2011-04-27 08:56:50
'('和')'試圖在em之前添加轉義字符 – Selvin 2011-04-27 08:57:24
@Tim它是一個CSS選擇器,'〜'表示它是一個正則表達式選擇器 – 2011-04-27 09:01:31