我需要打印帶有點的XML標記。 例如:bg.tres,resume.pr 下面是我試過的代碼,但它在第一次匹配後停止。我試圖首先提取標籤,然後確定標籤中有點。Perl腳本遍歷XML標記並列出所有標記點的標記
my $xml = q~<?xml version='1.0'?>
<bg.tres>
<resume.key='267298871' score='5'>
<xpath path='xpath://resume'>
<resume.pr canonversion='2' dateversion='2' present='734060'>
</resume.pr>
</xpath>
</resume>
</bg.tres>~;
#print $xml,$/;
foreach $line($xml)
{
if($line =~ m/<(.*?)>/)
{
print "$1\n";
}
}
誰能請審查,因爲所有的例子都存在與封裝和模塊的使用,但我需要用簡單的邏輯執行它,而功能。沒有這樣的例子,請建議。
使用XML解析器 –
兩個問題:1)這不是XML。 b)如果它是XML,用正則表達式解析它並不重要,因爲XML是上下文的,正則表達式不是。 c)有些模塊是XML解析器。你應該使用一個。 – Sobrique
這看起來不像格式良好的XML?您是否考慮過使用格式良好的XML和XML解析器? – Doqnach