LIBXML属性元素值匹配

时间:2014-04-18 11:53:06

标签: perl xpath libxml2

我有简单的findnodes,我只想匹配来自

的属性measValue
< measValue measObjLdn='XYZ' >

来自我的XML

findnodes(/measValue[@measObjLdn='XYZ')])

我的错误为Global symbol "@measObjLdn" requires explicit package name

当我看到@时,我收到错误XPath error : Invalid predicate

findnodes(/measValue[\@measObjLdn='XYZ')])

当我将measValue和measObjLdn作为变量时,它甚至更糟

my $mv=measValue;

my $mn=measObjLdn;

findnodes(/$mv["\@". "$mn"='XYZ')])

任何解决方案都将受到赞赏。

1 个答案:

答案 0 :(得分:3)

你的XPath应该是一个字符串:

$xml->findnodes( "/measValue[\@measObjLdn='XYZ')]" )