小编kip*_*ney的帖子

如何在PowerShell中获取转义的xml属性值而不进行转义

给出以下xml:

<foo bar="&amp;foobar">some text</foo>
Run Code Online (Sandbox Code Playgroud)

我需要获取bar属性的值而不将其转义为未转义.到目前为止我在PowerShell中尝试的每个方法都会产生这个值:

&foobar
Run Code Online (Sandbox Code Playgroud)

而不是这个:

&amp;foobar
Run Code Online (Sandbox Code Playgroud)

我需要后者,因为我需要文字的,正确转义的值来保持.

如果我这样做:

[xml]$xml = "<foo bar='&amp;foobar'>some text</foo>"
$xml.foo.bar
Run Code Online (Sandbox Code Playgroud)

属性值未转义(即&foobar).

如果我这样做:

$val = $xml | select-xml "/foo/@bar"
$val.Node.Value
Run Code Online (Sandbox Code Playgroud)

属性值未转义(即&foobar).

确保使用PowerShell获取属性的原始转义值的最佳方法是什么?

xml powershell xpath

5
推荐指数
3
解决办法
9816
查看次数

标签 统计

powershell ×1

xml ×1

xpath ×1