用匹配的字符串替换具有不同html但相同文本的字符串

时间:2014-05-23 18:19:56

标签: java

字符串1:

<img alt="" src="http://abcghgds.com/justin-bieber-ferns-650-430.jpg" width="650" height="430" /> Have you seen <a href="http://www.abcdefg.com/between_two_ferns" target="_blank">Between Two Ferns</a>?

结果1:

Have you seen <a   style = "display:inline" href="http://www.abcdefg.com/between_two_ferns" target="_blank">Between Two Ferns</a>?

我试图检查文本是否为string1以result1中的文本结尾。如果是,那么我想用#34;&#34;&#34;

替换String1中的文本(与result1中的文本相同)

所以基本上在上面的例子中,预期的输出是:(因为string1中的文本以result1中的文本结尾)我想要这个输出

String 1 = <img alt="" src="http://abcghgds.com/justin-bieber-ferns-650-430.jpg" width="650" height="430" /> 

虽然文本相同,但它包含的关联html是不同的。所以我无法真正取代它。

这是我尝试过的事情

String ans1= Jsoup.parse(string1).text();
String ans2 = Jsoup.parse(result1).text();

    if(ans1.endsWith(ans2))
    {   
        string1=string1.replace(result1, ""); ---> // This does not work as I have to replace the text as well as the html from the original string to get the desired op. How do I do it? 
    }

1 个答案:

答案 0 :(得分:2)

你忘了写所有你读过的数据并操纵数据

 String ans1= Jsoup.parse(string1).text();
 String ans2 = Jsoup.parse(result1).text();

if(ans1.endsWith(ans2))
{   
    string1=string1.replace(result1, "");
}
Jsoup.parse(ans1).text(string1);