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

JSoup元素wholeText删除间距

黄德明
2023-03-14

我正在使用以下代码用JSoup解析超文本标记语言:

Jsoup.parse(html).wholeText()

我的html示例将包括如下文本:

<p>some text</p><br /><br>later

然而,JSoup的输出总是:

some textlater

我想要的输出是这样的:

some text

later

(请注意,该行在“some text”和“later”之后返回)

如果我想保留间距,有没有其他方法代替wholeText?我确实发现了以下类似的stackoverflow问题:
在使用jsoup将html转换为纯文本时,如何保留换行符?

然而,这个问题的问题是,所有用户都希望使用字符串替换或正则表达式来查找br或其他特定标记。我正在寻找更通用的东西(比如一个html解析器,它可以删除html标记,同时保留换行符和其他空白——如果有更好的java库,它也不一定是jsoup)。

共有1个答案

宋经业
2023-03-14

你可以使用:

文档doc=Jsoup.parse(html);

将字符串转换为html节点进行操作,然后使用

doc。outputSettings()。金额(0)。预印(假)

保持空间和风格。

然后将html返回到字符串

doc。body()。html()。toString()

 类似资料:
  • 尽管这听起来可能太基本了,但我想问一下如何使用JSoup从doc中删除元素。 我试图寻找它,但没有成功。 问题是: 这工作罚款。但是我相信一次又一次地选择相同的元素可能会证明内存饥饿。有可能吗? //尝试从doc中选择myNewElements。

  • 我已经使用了一段时间,但我遇到了一个错误,其中JSoup自动删除"表"元素,找不到任何解决方案... 如果你导航到这段代码中的链接,你可以看到有多个元素“表”(例如:在“Saison 01(VF)”下,有22个包含“Episode x”的表元素),但是它们在JSOUP输出中不存在... 我试图用一个简单的获取文档,打印它(表元素在那里),用Jsoup解析它,重新打印(表元素不见了),所以我知道这不

  • 我想删除html和tables标签和里面的任何东西(childs),最好的方法是什么? 我试着像这样遍历文档,但它不起作用,在Jsoup文档中,它说从DOM及其子对象中删除元素:

  • 问题内容: 我想从JSON中删除JSON元素或整行。 我有以下JSON字符串: 问题答案: 您可以使用splice从数组中删除元素。

  • 主要内容:删除元素/内容,jQuery remove() 方法,实例,jQuery empty() 方法,实例,过滤被删除的元素,实例通过 jQuery,可以很容易地删除已有的 HTML 元素。 删除元素/内容 如需删除元素和内容,一般可使用以下两个 jQuery 方法: remove() - 删除被选元素(及其子元素) empty() - 从被选元素中删除子元素 jQuery remove() 方法 jQuery remove() 方法删除被选元素及其子元素。 实例 $("#div1").re

  • 主要内容:JavaTuples 删除元素的方法,JavaTuples 删除元素的示例JavaTuples 删除元素的方法 元组包含 removeAtX() 方法来删​​除特定索引处的值。例如 Triplet 类具有以下方法。 removeAt0() : 删除索引 0 处的值并返回结果元组。 removeAt1() : 删除索引 1 处的值并返回结果元组。 removeAt2() : 删除索引 2 处的值并返回结果元组。 删除一个元素会返回一个新的元组。 JavaTuples 删除