1
我有一个XML输入如下图所示:微分标记名称和属性“名” XML的PowerShell
<?xml version="1.0" encoding="utf-8"?>
<Content>
<section name="FileID"/>
<FileID>109F2AEA-6D9C-4127-963A-9C71D4155C5D</FileID>
<File Path="C:\test.config">
<Tag TagName="configuration"/>
</File>
</Content>
当我做递归搜索每个节点的名称为“写到FileID”使用来识别节点下面在PowerShell中的代码行:
if($ConfigChildItem.Name -eq "FileID")
{
...
}
其中$ ConfigChildItem是越来越填充在递归的XML节点得到搜索。 通过这也是我预料名为“写到FileID”来获得节点,如:
<FileID>109F2AEA-6D9C-4127-963A-9C71D4155C5D</FileID>
但它是失控标签,如:
<section name="FileID"/>
因为这些都是有属性的“名”与值“FileID”。 如何才能得到名称为“FileID”的标签,而不是属性名称为“名称”和属性值为“FileID”的标签?
感谢您的回答。这是有效的,但问题在于,“FileID”标签可以来自任何级别,这就是为什么我需要通过递归搜索来识别标签。 – RinoTom
您可以使用“// FileID”作为xpath表达式来查找任何级别的所有FileID。 –
但是,搜索是为了编辑输出节点的内容并保存xml文件,然后这种从XML输入单独提取内容的方式将是单调乏味的。有没有更好的方法来完成这件事? – RinoTom