我正在使用powerShell,我想在XPath中使用lower-case()。这样的东西
//Machines/Machine[lower-case(@FQDN)=lower-case('machine2.mydomain.com')]
文档表明我需要XPath 2.0,如何检查服务器上安装的XPath版本?
答案 0 :(得分:4)
从.NET Framework中的2012, Microsoft was officially not supporting XPath 2.0开始(这是您将从PowerShell使用的内容,除非您引入第三方库)并且最近last year它是仍然没有发生。鉴于他们said a decade ago他们没有实施它,而且它还没有发生 - 不要指望它发生过。
有关替代方案,请参阅XPath and XSLT 2.0 for .NET?。
答案 1 :(得分:0)
您可以在powershell中进行操作而不必担心大小写:
$xml = [xml](get-content file.xml)
$xml.machines.machine | ? fqdn -eq machine2.mydomain.com
FQDN
----
machine2.mydomain.com