【发布时间】:2015-06-19 21:01:20
【问题描述】:
我想过滤我的列表以便仅获取 href 的 URL。 在我的列表中,我们可以有多个对象,所以我想创建另一个列表,只有 href 的 URL。
这是我的列表返回的示例:
[<a rel="prettyPhoto[gallery-113]" href='http://www.bundoransurfco.com/wp-content/uploads/2014/11/11149460_10152656389992000_7842452340110509403_n.jpg'>]
所以也许创建类似谓词或正则表达式的东西:以 "href" 开头,并创建一个循环以在找到匹配项时添加新列表?
干杯!...
我的新代码:
Pattern pattern = Pattern.compile("<a rel=\"prettyPhoto\\[gallery-113\\]\"[^>]*>");
Matcher matcher = pattern.matcher(contentString);
List<String> urlWithRel=new ArrayList<String>();
String lastString;
while(matcher.find()) {
urlWithRel.add(matcher.group());
lastString = urlWithRel.toString();
Pattern lastPattern = Pattern.compile("(?<=href=).*(?=>)");
Matcher lastMatcher = lastPattern.matcher(lastString);
List<String> imagesUrl=new ArrayList<String>();
while(lastMatcher.find()) {
imagesUrl.add(lastMatcher.group());
}
Log.i(TAG, "dernier : "+ imagesUrl);
}
【问题讨论】:
标签: java android regex list filter