使用etree从xml标签解析名称空间
问题描述:
从xml标签解析名称空间的最佳方法是什么?例如:使用etree从xml标签解析名称空间
<test xmlns:xsd="http://www.w3.org/2001/XMLSchema#">
<xsd:step name="testing"/>
</test>
打印出来使用xml.etree的.TAG将是:
{http://www.w3.org/2001/XMLSchema#}step
我的目标是刚刚得到的标记为“步”我知道我可以只删除一切{ },但我想知道是否有一个内置命令分隔命名空间和标记。如果没有内置命令,那么执行此操作的最佳方法是什么?
答
看来xml
或lxml
中没有内置功能来实现您正在寻找的功能。用正则表达式删除括号中的部分:
import re
re.sub('{.*}', '', tag)