Scala:获取 XML 中的子节点数
Scala: get child nodes count in XML
我XML格式
val XML =
<a>
<b>value_b</b>
<c>
<c_1>value_c_1</c_1>
<c_2>value_c_2</c_2>
<c_3>value_c_3</c_3>
</c>
<b>value_b</b>
<c>
<c_1>value_c_1</c_1>
<c_2>value_c_2</c_2>
<c_3>value_c_3</c_3>
</c>
<b>value_b</b>
<c>
<c_1>value_c_1</c_1>
<c_2>value_c_2</c_2>
<c_3>value_c_3</c_3>
</c>
</a>
我想统计 <c>
以下儿童的人数
我试过
(XML \ "c").length
但这给出了所有 <c>
标签的计数。我无法访问 descendant
作为 (XML \ "c")
returns NodeSeq
尝试(XML \ "c" \ "_").length
给出所有记录的总长度。不确定如何访问子节点。有什么想法吗?
编辑:
(XML \ "c" \ "_").length / (XML \ "c").length
这给出了 <c>
下字段的正确计数。但是,我觉得它有点笨拙。需要更好的解决方案。
(XML \ "c" \ "_").length
给出 9(所有 "c" children 的计数)
((XML \ "c")(0) \ "_").length
给出 3(第一个 "c" children 的计数)
我XML格式
val XML =
<a>
<b>value_b</b>
<c>
<c_1>value_c_1</c_1>
<c_2>value_c_2</c_2>
<c_3>value_c_3</c_3>
</c>
<b>value_b</b>
<c>
<c_1>value_c_1</c_1>
<c_2>value_c_2</c_2>
<c_3>value_c_3</c_3>
</c>
<b>value_b</b>
<c>
<c_1>value_c_1</c_1>
<c_2>value_c_2</c_2>
<c_3>value_c_3</c_3>
</c>
</a>
我想统计 <c>
以下儿童的人数
我试过
(XML \ "c").length
但这给出了所有 <c>
标签的计数。我无法访问 descendant
作为 (XML \ "c")
returns NodeSeq
尝试(XML \ "c" \ "_").length
给出所有记录的总长度。不确定如何访问子节点。有什么想法吗?
编辑:
(XML \ "c" \ "_").length / (XML \ "c").length
这给出了 <c>
下字段的正确计数。但是,我觉得它有点笨拙。需要更好的解决方案。
(XML \ "c" \ "_").length
给出 9(所有 "c" children 的计数)
((XML \ "c")(0) \ "_").length
给出 3(第一个 "c" children 的计数)