Допустим, я хочу разобрать номер телефона из строки xml следующим образом:
str = """ <root>
<address>123 New York, NY 10019
<div class="phone"> (212) 212-0001</div>
</address>
</root>
"""
parser = new XmlSlurper(new org.ccil.cowan.tagsoup.Parser()).parseText (str)
println parser.address.div.text()
Номер телефона не печатается.
Если я изменю "div"element to" foo "вот так
str = """ <root>
<address>123 New York, NY 10019
<foo class="phone"> (212) 212-0001</foo>
</address>
</root>
"""
parser = new XmlSlurper(new org.ccil.cowan.tagsoup.Parser()).parseText (str)
println parser.address.foo.text()
Затем он может проанализировать и напечатать номер телефона.
Что, черт возьми, происходит?
Кстати, я использую Groovy 1.7.5 и tagoup 1.2