1

任何人都可以帮助我如何在我的脚本中获取标签名称。在下面的代码中,我需要获取 mbrSqncNum?帮帮我...

<Id>059A670</healthCardId> 
<subscriberId>059A625</subscriberId> 
<mbrSqncNum>10</mbrSqncNum> 
4

1 回答 1

3

假设您有有效的 XML(与没有根节点和不匹配标签的问题不同),并假设它存储在 String 变量中:

def xml = '''<doc>
            |    <healthCardId>059A670</healthCardId> 
            |    <subscriberId>059A625</subscriberId> 
            |    <mbrSqncNum>10</mbrSqncNum> 
            |</doc>'''.stripMargin()

然后,您可以使用以下方法解析此 XML:

def doc = new XmlParser().parseText( xml )

(如果它在一个文件中,你可以使用它代替)

def doc = new XmlParser().parse( xmlFile )

现在从您的问题中不清楚您到底想要什么...要打印出所有标签名称,您可以执行以下操作:

// prints '[doc, healthCardId, subscriberId, mbrSqncNum]'
println doc.'**'*.name()

(较长形式的相同内容是)

// prints '[doc, healthCardId, subscriberId, mbrSqncNum]'
println doc.breadthFirst()*.name()

或者要获取 tag 的值mbrSqncNum,您可以执行以下操作:

// prints '10'
println doc.mbrSqncNum.text()

还是你的意思是别的?

于 2013-09-11T11:54:40.460 回答