Analisar e contar apenas texto xml numérico, incluindo e-00 ou e + 01
Eu sou um novato python. Estou tentando analisar um arquivo xml e contar todas as entradas de texto que são todas numéricas, incluindo valores aproximados usando e- ou e +. Por exemplo. Dado o código psuedo abaixo (jerry.xml),
<data>
<country name="Liechtenstein">
<rank updated="yes">2</rank>
<language>english</language>
<currency>1.21$/kg</currency>
<gdppc>141100</gdppc>
<gdpnp>2.304e+0150</gdpnp>
<neighbor name="Austria" direction="E"/>
<neighbor name="Switzerland" direction="W"/>
</country>
<country name="Singapore">
<rank updated="yes">5</rank>
<language>english</language>
<currency>4.1$/kg</currency>
<gdppc>59900</gdppc>
<gdpnp>5.2e-015</gdpnp>
<neighbor name="Malaysia" direction="N"/>
</country>
Gostaria de retornar 6, tendo contado 2, 141100, 2.304e + 0150, 5, 59900 e 5.2e-015, omitindo inglês, 1,21 $ / kg ou 4,1 $ / kg.
Qualquer ajuda seria apreciada. Por enquanto eu tenho o seguinte.
import xml.etree.ElementTree as ET
tree = ET.parse("jerry.xml")
root = tree.getroot()
for text in root.itertext():
print repr(text)
charlie = file.writelines(root.itertext())
count = sum(element.firstChild.nodeValue.find(r'\d+') for element in xmldoc.getElementsByTagName('jerry.xml'))