繁体   English   中英

XPath查询不输出任何结果

[英]XPath query doesn't output any results

为什么使用下面的XML和XPath代码没有得到任何结果?

这实际上是PowerShell,但我也使用此在线工具进行了尝试,但是再次:它什么也不输出!

我想我完全忽略了什么!

[xml] $xml = @"
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup Label="ProjectConfigurations">
    <ProjectConfiguration Include="Debug|AnyCPU">
      <Configuration>Debug</Configuration>
      <Platform>AnyCPU</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug|ARM">
      <Configuration>Debug</Configuration>
      <Platform>ARM</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug|x64">
      <Configuration>Debug</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug|x86">
      <Configuration>Debug</Configuration>
      <Platform>x86</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|AnyCPU">
      <Configuration>Release</Configuration>
      <Platform>AnyCPU</Platform>
    </ProjectConfiguration>
  </ItemGroup>
</Project>
"@;

Select-Xml "//ItemGroup" $xml | % {
    Write-Host $_.Node.GetType();
}

这是由于默认名称空间。

尝试//*[local-name()='ItemGroup']

/*/*[local-name()='ItemGroup']

/*/*

所有这三个都应返回ItemGroup

如果您的名称空间有前缀,则还可以执行以下操作:

//prefix:ItemGroup

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM