当字符串中有空格时,Powershell 替换不起作用

问题描述 投票:0回答:2

我有这行powershell:

$_.Fields[$field.Name].Value.Replace("abc gcb","simple")

当我这个简单的替换它没有发生时,什么也没有发生。如何将带空格的字符串替换为单个单词?

powershell
2个回答
0
投票

据猜测,您可能希望就地更改字符串。 这不会发生。

Replace()
方法创建一个新的字符串对象,但不会将新对象与旧变量连接起来。所以你可能需要更多类似这样的东西:

$_.Fields[$field.Name].Value = $_.Fields[$field.Name].Value.Replace("abc gcb","simple")

0
投票

使用额外的变量

$FieldName = $field.Name
您可以将其访问为
$_.Fields.$FieldName.Value.Replace("abc gcb","simple")

这个问题中还提到:如何动态访问对象属性?

© www.soinside.com 2019 - 2024. All rights reserved.