gpt4 book ai didi

java - 正则表达式过滤跨度标签(如果它具有属性)

转载 作者:行者123 更新时间:2023-12-01 06:02:16 25 4
gpt4 key购买 nike

我有下面的代码,如果它没有使用java的任何属性,我想剥离或删除span标签。

此正则表达式删除所有 SPAN 标记。 <(/)?[ ]跨度[^>]>

例如

<span style="font-weight: bold;text-decoration-line: underline;">test</span><p><span>&nbsp;</span></p><p><span>Table</span></p>

输出:

  <span style="font-weight: bold;text-decoration-line: underline;">test</span><p>&nbsp;</p><p>Table</p>

有什么帮助吗?

最佳答案

这是不可能的。正则表达式无法知道哪个结束 </span>标签属于<span>你想删除。使用 HTML 解析器,例如 jsoup .

编辑:

示例

    String html = "<span style=\"font-weight: bold;text-decoration-line: underline;\">test</span><p><span>&nbsp;</span></p><p><span>Table</span></p>";

Document doc = Jsoup.parse(html);

for (Element span : doc.getElementsByTag("span")) {
if (span.attributes().size() == 0) {
span.unwrap();
}
}

doc.outputSettings().prettyPrint(false);

String result = doc.body().html();

关于java - 正则表达式过滤跨度标签(如果它具有属性),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54685005/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com