当前位置: 首页 > 知识库问答 >
问题:

使用JSoup将标记替换为字母

卜勇
2023-03-14

您好,我已经尝试了以下答案:如何使用jsoup替换标记,以及如何使用jsoup替换HTML标记,但都没有成功。我正在用JSoup解析一个网站,我运行了一个accross-letter-look GIF图像。幸运的是,这些gif图像有一个特定的名称,例如字母“a”的a.gif。

HTML输入:

<body>
  <p><img src="http://www.example.com/images/a.gif" align="left">mong us!</p>
</body>

期望输出:

<body>
  <p>Among us!</p>
</body>

我的java代码(以下)未打印预期输出:

Document document = Jsoup.connect("http://www.example.com").get();
if(document.select("img").attr("src").contains("a.gif"))
  {
    document.select("img").get(0).replaceWith(new Element(Tag.valueOf("img"), "A"));
  }

谢谢你的帮助。

共有3个答案

惠凯歌
2023-03-14

试试这个:

    Document document = Jsoup.connect("http://www.example.com").get();
    if(document.select("img").attr("src").contains("a.gif"))
      {
       String result ="";
       String src =document.select("img").attr("src").text();
       result = src.replace(src,"A");
       System.out.println(result);

      }
尉迟栋
2023-03-14

使用TextNode而不是元素

Document document = Jsoup.parse(html);
if (document.select("img").get(0).attr("src").contains("a.gif")) {
    document.select("img").get(0).replaceWith(new TextNode("A", ""));
    System.out.println(document);
}

上面的代码可以按预期打印html。

公孙嘉禧
2023-03-14

试试这个!!

  Elements elements = doc.select("img[src$=a.gif]");
   for(Element element : elements)
    {
      element.replaceWith(new TextNode("A", null));
    }
 类似资料:
  • 这是我的密码 我想替换字体标签,并把span标签。在这将取代第一个字体标签但不是第二个标签

  • 我想改变HTML元素的文本内容,使其具有一定的背景色。HTML的格式如下 我有像下面这样需要匹配的关键字: 我有字符串形式的html 我想匹配元素文本内容,并在匹配HTML字符串时用关键字替换它们。我会改变他们的跨度有给定的背景颜色和匹配关键字的文本。 生成的HTML如下所示。 如何用java实现它。我正在使用jsoup库。 这个代码对我有用。这是最佳方法吗?。或者有没有更好的替代html字符串的

  • 有没有人知道如何使用JSoup替换元素。我试图用按钮替换表格元素及其内容,但没有成功。代码尝试如下。这是一个Android项目

  • 这些正则表达式快把我累死了,不管我读什么,我都无法理解这个概念。 这是我的问题,我相信它非常容易解决。 我只想用