2013-07-03 67 views
0

我有一個PLIST,它在轉換成XML時有這樣的片段;我使用perl的XML :: XPath來讀取這個,並可以很容易地使用應用程序標識符;在perl中使用XPath來讀取Mac Plist布爾值

my $app_id = $xp->findvalue('//key[text()="application-identifier"]/following-sibling::*[1]'); 

但我堅持讀取獲取任務允許值。例如,這似乎並不奏效;

my $gettask = $xp->findvalue('//key[text()="get-task-allow"]/following-sibling::*[1]'); 

任何人都可以用正確的XPath表達式搜索輔助使用讀取<假/ >這是我想讀的GET-任務允許鍵的值?

回答

2

你想要一個節點

my ($gettask) = $xp->findnodes(
    '//key[text()="get-task-allow"]/following-sibling::*[1]'); 

say $gettask->nodeName(); 
1

啊哈...所以下面至少告訴我我是在正確的地方;

$xp->findnodes_as_string('//key[text()="get-task-allow"]/following-sibling::*[1];