Java 检查节点在jsoup中是否有明文?
我知道方法元素.hasText()可以检查节点是否在jsoup上有文本,但包含链接文本。我只是想看看它是否有纯文本?谁能给我一些解决办法?非常感谢您为此使用正则表达式,下面是一个示例:Java 检查节点在jsoup中是否有明文?,java,html,css,dom,jsoup,Java,Html,Css,Dom,Jsoup,我知道方法元素.hasText()可以检查节点是否在jsoup上有文本,但包含链接文本。我只是想看看它是否有纯文本?谁能给我一些解决办法?非常感谢您为此使用正则表达式,下面是一个示例: final String html = "<p><span>spantext</span></p>"; // p-tag with no own text, but a child which has one Document doc = Jsoup.parse(h
final String html = "<p><span>spantext</span></p>"; // p-tag with no own text, but a child which has one
Document doc = Jsoup.parse(html);
// Check if the 'p'-tag has own text
boolean hasText = doc.select("p").is("p:matchesOwn(^$)"); // --> true, p has no own text
另一个解决方案:
public static boolean hasOwnText(Element element)
{
return !element.ownText().isEmpty();
}
使用上面的html和文档:
boolean hasText = hasOwnText(doc.select("p").first())
如果这解决了你的问题,请回答这个问题。
boolean hasText = hasOwnText(doc.select("p").first())