[英]How can I remove extra space in empty xml tags
我有一個xml文件,我正在其中尋找特定標簽(例如:tag <x>
),如果找到他,我會將其值替換/更新為特定文本(例如: test )。
Python版本3.5.0。
樣本xml文件:
<root>
<a/>
<b>0</b>
<c/>
<x>some value</x>
</root>
這是我的代碼:
from xml.etree import ElementTree as et
datafile = 'input.xml' # path to the source xml file
datafile_out = 'output.xml' # path to the updated xml
tree = et.parse(datafile)
tree.find('.//x').text ='TEST' # find <x> tag and write there value "TEST"
tree.write(datafile_out) #generating updated xml file
這是我的輸出:
<root>
<a />
<b>0</b>
<c />
<x>TEST</x>
</root>
一切正常。
但是我的問題是空標記中有多余的空間:輸入名稱xml中不存在的標記名稱“ a”和“斜杠”之間的<a />
。
我正在使用帶有大量空標簽的大型xml文件,因此每個額外的空間都會使該文件更大。
有什么辦法可以停止ElementTree.write()添加額外的空間?
注意:我想使用Python中的內置模塊,而不要安裝第三方解決方案。
非常感謝您的建議!
您是否嘗試過使用正則表達式。
舉個例子:
yourXmlAsString.replaceAll(“> \\ s * <”,“> <”); 將刪除每個XML元素之間的所有空格。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.