找到命名格式化程序时,字符串格式化失败

时间:2020-07-10 08:44:34

标签: string powershell

为什么在尝试传递编号参数的值时字符串下面的格式失败

此操作失败 v1/acknowledge/{requestUuid}/{registrationUuid}/response?requestUuid={0}&registrationUuid={1} -f "a","b"

这有效

v1/acknowledge/requestUuid/registrationUuid/response?requestUuid={0}&registrationUuid={1} -f "a","b"

这是错误原因

{requestUuid} / {registrationUuid}

该如何解决?

1 个答案:

答案 0 :(得分:0)

要在格式字符串中使用大括号,您需要使用双大括号,例如:

'v1/acknowledge/{{requestUuid}}/{{registrationUuid}}/response?requestUuid={0}&registrationUuid={1}' -f 'a', 'b'

这对 PowerShell C#中的String interpolation都有效。
PowerShell的不同之处在于,PowerShell不支持命名占位符,请参见:adding Named placeholders in format operator