我正在尝试循环这样的表达式,将字符串'question-hyperlink'更改为 列表中的项目我是groovy的新手,无法找到有效的方法。你真的需要硬编码吗?我能找到的每个例子都是硬编码的
.find{ it.@class == 'question-hyperlink'}it.book.title
答案 0 :(得分:3)
无需硬编码,您可以使用列表,并且可以使用in
运算符:
xml = '''<div>
<div class="header">header div</div>
<div class="body">body div</div>
<span class="footer">footer span</span>
</div>
'''
node = new XmlSlurper().parseText xml
// the element's classes we want
classes = ['header', 'body']
contents = node.breadthFirst().findAll { it.@class in classes }*.text()
assert contents == ['header div', 'body div']