Groovy:更正XMLSlurper的语法以查找具有给定属性的元素
时间:2020-03-06 14:25:05 来源:igfitidea点击:
给定一个结构为html-> body->一堆div的HTML文件,找到所有具有非空白标签属性的div的正确的groovy语句是什么?
以下内容不起作用:
def nodes = html.body.div.findAll { it.@tags != null }
因为它找到了所有节点。
解决方案
尝试以下方法(Groovy 1.5.6):
def doc = """
<html>
<body>
<div tags="1">test1</div>
<div>test2</div>
<div tags="">test3</div>
<div tags="4">test4</div>
</body>
</html>
"""
def html = new XmlSlurper().parseText( doc)
html.body.div.findAll { [email protected]()}.each { div ->
println div.text()
}
输出:
test1 test4

