我在powershell中使用字符串替换时遇到问题。请考虑以下表达式:
"replaceTarget: %rep" -replace '%rep','$_'
我希望这个表达式的结果是:
replaceTarget: $_
但相反,它是
replaceTarget: replaceTarget: $rep
我认为这是因为替换字符串'$_'
在replace
函数中具有其他含义。
如何转义输入字符串,以便在不进行评估的情况下传递$_
?
答案 0 :(得分:4)
试试这个:
'replaceTarget: %rep' -replace '%rep','$$_'
答案 1 :(得分:2)
你可以使用像这样的.net替换函数:
'replaceTarget: $rep'.replace("`$rep",'$_')