0

考虑:

$str = 'My {token} string'

$newStr = $str.Replace('{token}', 'value')
$newStr
My value string

function strReplace ($str, $rval) { $str.Replace('{token}', $rval) }
$newStr = strReplace($str, 'value')
$newStr
My  string
value

即使string.Replace返回单个字符串,object[]返回管道中也会显示一个。为什么?有没有办法获得明显的返回值?

4

1 回答 1

3

这是因为您在$str函数中传递了一个数组作为参数。您需要像这样调用 PowerShell 函数(没有括号,没有逗号分隔参数):

$newStr = strReplace $str 'value'
于 2013-02-21T20:05:50.440 回答