2016-04-15 72 views
0

我从wordpress博客获取RSS提要,我在字符串中获取缩略图图像。下面是示例饲料我得到如何找到匹配的查询字符串并在java中替换?

< IMG SRC = “http://www.example.com/some-image.jpg?resize=50%2C50” 类=“附件缩略图WP-交-image“alt =”SomeImage“ style =”margin:0px;“/>

我需要删除 “?调整大小= 50%2C50” 从图像源。但问题是我无法在代码中对此进行硬编码,因为大小可能不一样。此外,在其属性放置顺序可能改变

我怎么可以简单地删除该模式匹配任何这样我可以随时获得输出

< IMG SRC =“HTTP:// WWW .example.com/some-image.jpg“ class =”attachment-thumbnail wp-post-image“alt =”一些图片“ style =”margin:0px;“/>

在此先感谢

+6

你到目前为止尝试了什么?你面对什么问题?或者你只是想让我们为你写一个代码? –

+0

如果尾部的'?'仍然存在,是不是'some-image.jpg?'class =“' –

+0

图片总是以jpg格式? – Ricardo

回答

0

正则表达式来捕捉图像:然后src=(".+\.jpg)(\?resize\S+") 可与src=\$1"

String url="<img src=\"http://www.example.com/some-image.jpg?resize=50%2C50\" class=\"attachment-thumbnail wp-post-image\" alt=\"SomeImage\" style=\"margin:0px;\" />"; 
    final String regex="src=(\".+\\.jpg)(\\?resize\\S+\")"; 
    url = url.replaceFirst(regex, "src=$1\""); 

    System.out.println(url); 
0

取代如果我理解正确的,你只想要的路径到参数,可以所以:

String str = "<img src=\"http://www.example.com/some-image.jpg?resize=50%2C50\" class=\"attachment-thumbnail wp-post-image\" alt=\"SomeImage\" style=\"margin:0px;\" />"; 
System.out.println(str.replaceFirst("(\\?\\S[^\"]+)", "")); 

这将输出:

<img src="http://www.example.com/some-image.jpg" class="attachment-thumbnail wp-post-image" alt="SomeImage" style="margin:0px;" />