我需要打印带有点的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