1

英数字と特殊文字を使用できる有効な英語の文と一致させるために、Python 正規表現を作成できるかどうか疑問に思っていました。
基本的に、XML ファイルからいくつかの特定の要素を抽出したかったのです。これらの特定の要素は、次の形式になります。

<p o=<Any Number>> <Any English sentence> </p>  

例えば:

<p o ="1"> The quick brown fox jumps over the lazy dog </p>

また

<p o ="2">  And This is a number 12.90! </p>

の正規表現を簡単に書くことができます

<p o=<Any Number>>

</p>タグ。しかし、正規表現グループを作成して、これらのタグの間にある文を抽出することに興味があります。

上記の問題に使用する正規表現を提案してもらえますか?

また、回避策を提案していただければ、私にとっても非常に役に立ちます。

4

2 に答える 2

9

lxmlのような XML パーサーを使用してください。正規表現はこのタスクには適していません。例:

import lxml.etree
// First we parse the xml
doc = lxml.etree.fromstring('<p o ="2">  And This is a number 12.90! </p>')
// Then we use xpath to extract the element we need
doc.xpath('/p/text()')

XPATH の詳細については、Xpath チュートリアルを参照してください。

于 2012-05-25T11:06:02.663 に答える
1

本当にxmlパーサーを使用する必要があります。ここの例http://www.travisglines.com/web-coding/python-xml-parser-tutorial

于 2012-05-25T11:08:59.790 に答える