【发布时间】:2016-11-26 20:40:36
【问题描述】:
我正在使用 PowerShell 递归替换 XML 文件中的文本。该脚本在替换时工作正常。然而,XML 文件也有不应被替换的文件路径。这是当前正在使用的脚本
if ( $content -match ' web site | web-site ' ) {
$content -replace ' web site ',' New Site ' -replace ' web-site ',' New Site ' |
Out-File $file.FullName -Encoding utf8
例如,如果 XML 文件有
<title>web site</title>
<subtitle>web-site</subtitle>
<path>c:/web site/website.xml</path>
预期的输出应该如下所示。文件路径中的匹配文本应被忽略。如果字符串在/web site/ 或/web-site.xml 之间,我如何添加一个条件来忽略字符串?
<title>New Site</title>
<subtitle>New Site</subtitle>
<path>c:/web site/website.xml</path>
【问题讨论】:
标签: powershell powershell-2.0 powershell-3.0