我正在尝试编写一个函数,该函数将打印用户提供的问候语,该问候语发送给用户提供的名称.我想在这个代码块中使用扩展字符串:
$Name = "World"
$Greeting = "Hello, $Name!"
$Greeting
Run Code Online (Sandbox Code Playgroud)
哪个成功打印Hello, World!.但是,当我尝试将这些字符串作为参数传递给类似的函数时,
function HelloWorld
{
Param ($Greeting, $Name)
$Greeting
}
HelloWorld("Hello, $Name!", "World")
Run Code Online (Sandbox Code Playgroud)
我得到了输出
Hello, !
World
Run Code Online (Sandbox Code Playgroud)
经调查,PowerShell的似乎忽略了$Name在"Hello, $Name!"完全与运行
HelloWorld("Hello, !", "World")
Run Code Online (Sandbox Code Playgroud)
产生与上述相同的输出.此外,它似乎并不认为"World"是$Name运行以来 的价值
function HelloWorld
{
Param ($Greeting, $Name)
$Name
}
HelloWorld("Hello, $Name!", "World")
Run Code Online (Sandbox Code Playgroud)
不产生任何产出.
当作为函数参数传入时,有没有办法让扩展字符串工作?