我想从json数据返回的文本中抓取img标签
#رصد| #انقلاب_3يوليو| اليوم ... مبني المركبات العسكري في صلاح سالم<br /> <br /> تصوير المواطن الصحفي : عبدالرحمن النحاس<br/><br/><a href="https://www.facebook.com/photo.php?fbid=598075296936250&set=a.280183138725469.58204.103622369714881&type=1&relevant_count=1" id="" title="" target="" onclick="" style=""><img class="img" src="https://fbcdn-photos-c-a.akamaihd.net/hphotos-ak-frc3/1239478_598075296936250_1910331324_s.jpg" alt="" /></a>
我想抓住这个
<img class="img" src="https://fbcdn-photos-c-a.akamaihd.net/hphotos-ak-frc3/1239478_598075296936250_1910331324_s.jpg" alt="" />
我必须在android中使用什么reqular表达式来匹配它
我使用了这个代码,但它不起作用
String content = e.getString("content");
String img = "";
Pattern p = Pattern
.compile("<img[^>]+src\\s*=\\s*['\"]([^'\"]+)['\"][^>]*>");
Matcher m = p.matcher(content);
if (m.matches()) {
Log.d("true", m.group(0).toString());
img = m.group(0).toString();
}
Log.d("image", "image : " + content);
使用正则表达式解析HTML是一个非常糟糕的主意。
您还需要注意正确的编码,因为您需要阿拉伯语文本。
好你知道你可以在没有正则表达式的情况下获取JSON对象并解析它吗?这可能是最好的办法。然后,您可以直接将内容剥离出来,而不用担心解析字符串中的任何内容,因为它会自动将内容放入变量中。
如何解析JSON
由于@duffymo在我上面发布的原因,与regex混在一起可能会变得非常混乱。
编辑:
我明白你想做什么了。。。。从内容部分解析图像是否正确?这里需要涉及两件事是的。。正则表达式和json解析。您需要从json解析器获取所有内容字段,然后在这些字段上使用正则表达式来提取图像。这就是你想做的,对吗?