我有一个-content-
形式的字符串,我想用&content&
替换它。如何在PowerShell中替换?
答案 0 :(得分:14)
PowerShell字符串只是.NET字符串,因此您可以:
PS> $x = '-foo-'
PS> $x.Replace('-', '&')
&foo&
...或:
PS> $x = '-foo-'
PS> $x.Replace('-foo-', '&bar&')
&bar&
显然,如果要保留结果,请将其分配给另一个变量:
PS> $y = $x.Replace($search, $replace)
答案 1 :(得分:10)
内置的-replace
运算符允许您使用正则表达式,例如:
C:\PS> '-content-' -replace '-([^-]+)-', '&$1&'
&content&
请注意,在替换字符串中使用单引号是必不可少的,因此PowerShell不会解释$ 1捕获组。