我使用ElementTree来解析我拥有的一个XML文档。我正在从u
标记中获取文本。其中有些混合内容,我需要过滤掉或保留为文本。我有两个例子:
<u>
<vocal type="filler">
<desc>eh</desc>
</vocal>¿Sí?
</u>
<u>Pues...
<vocal type="non-ling">
<desc>laugh</desc>
</vocal>A mí no me suena.
</u>
如果voice标签的类型是filler
,我想得到它里面的文本,但是如果它的类型是non-ling
,就不需要了。在
如果我迭代u
的子元素,那么最后一个文本位总是丢失。我能到达它的唯一方法是使用itertext()
。但这样就失去了检查声带类型的机会。在
如何解析它以得到如下结果:
^{pr2}$
丢失的文本是“Sí?”和“A míno me suena.”可作为每个} 属性。在
<vocal>
元素(元素结束标记后面的文本)的^{下面是一种获得所需输出的方法(用python2.7测试)。在
假设声乐.xml看起来像这样:
代码:
^{pr2}$输出:
相关问题 更多 >
编程相关推荐