久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

如何使用 regexp + Python 從 XML 中獲取指定標簽屬性

How to get value of specified tag attribute from XML using regexp + Python?(如何使用 regexp + Python 從 XML 中獲取指定標簽屬性的值?)
本文介紹了如何使用 regexp + Python 從 XML 中獲取指定標簽屬性的值?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我有一個解析一些 xml 的腳本.XML 包含:

I have a script that parses some xml. XML contains:

<SD TITLE="A" FLAGS="" HOST="9511.com">
<TITLE TEXT="9511 domain"/>
<ADDR STREET="Pmb#400, San Pablo Ave" CITY="Berkeley" STATE="CA" COUNTRY="US"/>
<CREATED DATE="13-Oct-1990" DAY="13" MONTH="10" YEAR="1990"/>
<OWNER NAME="9511.Org Domain Name Proxy Agents"/>
<EMAIL ADDR="proxy@9511.org"/><LANG LEX="en" CODE="us-ascii"/>
<LINKSIN NUM="75"/><SPEED TEXT="3158" PCT="17"/>
<CHILD SRATING="0"/>
</SD>
<SD>
<POPULARITY URL="9511.com/" TEXT="1417678" SOURCE="panel"/>
</SD>

如何獲取標簽的'TEXT'屬性值(在我的例子中是1417678)?我正在使用正則表達式+Python.正則表達式字符串:

How to get the 'TEXT' attribute value of tag(in my case 1417678)? I'm using regexp+Python. Regexp string:

my_value = re.findall("POPULARITY[^d]*(d+)", xml)

我收到了9511",但我需要1417678".

It gets to me '9511' but i need '1417678'.

推薦答案

您只是匹配出現在元素名稱之后的第一個十進制數字序列.在任意數量的非數字 '[^d]*' 之后的第一個數字序列 '(d+)'9511.

You are just matching the first sequence of decimal digits that occurs after the element's name. The first sequence of digits '(d+)' after a arbitrary number of non-digits '[^d]*' is 9511.

為了findall @TEXT 屬性的值,這樣的事情會起作用:

In order to findall values of @TEXT attributes, something like this would work:

my_values = re.findall("<POPULARITY(?:D+="S*")*s+TEXT="(d*)"", xml) # returning a list btw

或者,如果除了 @TEXT 之外沒有其他屬性將具有純數字值:

Or, if no other attributes will have digit-only values except @TEXT:

 re.findall("<POPULARITYs+(?:S+s+)*w+="(d+)"", xml)

(?:...) 與包含的表達式匹配,但不像 (...) 那樣充當可尋址組.特殊序列 SD 是它們對應的小寫字母的反轉,分別擴展到(除了)空格和數字.

Where (?:...) matches the embraced expression, but doesn't act as an addressable group, like (...). The special sequences S and D are the invertions of their lowercase counterparts, expanding to (anything but) whitespace and digits, respectively.

但是,正如已經提到的,正則表達式不適用于 XML,因為 XML 不是常規語言.

However, like already mentioned, regex are not meant to be used on XML, because XML is not a regular language.

這篇關于如何使用 regexp + Python 從 XML 中獲取指定標簽屬性的值?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Troubles while parsing with python very large xml file(使用 python 解析非常大的 xml 文件時出現問題)
Find all nodes by attribute in XML using Python 2(使用 Python 2 在 XML 中按屬性查找所有節點)
Python - How to parse xml response and store a elements value in a variable?(Python - 如何解析 xml 響應并將元素值存儲在變量中?)
How to get XML tag value in Python(如何在 Python 中獲取 XML 標記值)
How to correctly parse utf-8 xml with ElementTree?(如何使用 ElementTree 正確解析 utf-8 xml?)
Parse XML from URL into python object(將 XML 從 URL 解析為 python 對象)
主站蜘蛛池模板: 玖玖视频国产 | 成人久久久 | 国产高清免费 | 国产成都精品91一区二区三 | 在线观看成人小视频 | 久久精品国产亚洲一区二区 | 91av视频在线观看 | 成人免费视频 | 精品国产亚洲一区二区三区大结局 | 欧美色性 | 91人人在线 | 在线观看国产网站 | 成人欧美一区二区三区在线观看 | 亚洲在线一区 | 国产一卡二卡三卡 | 网站黄色在线免费观看 | 日韩小视频在线 | 免费观看黄 | 亚洲一区二区免费 | 成人国产精品久久 | 国产69精品久久久久777 | 欧美午夜精品 | 欧美一区免费 | 精品一区二区久久久久久久网站 | 大吊一区二区 | 亚洲欧美日韩精品久久亚洲区 | 日本精a在线观看 | www国产亚洲精品久久网站 | 性福视频在线观看 | 国产成人精品高清久久 | 香蕉视频久久久 | 免费观看成人鲁鲁鲁鲁鲁视频 | 国产免费一区二区三区 | 欧美性网站| 黄色av网站免费看 | 中文字幕国产 | 91久久国产综合久久91精品网站 | 国产精品www| 亚洲国产精品成人久久久 | 第一福利社区1024 | 99热热99|