如何用特殊符号换行替换特殊符号线

时间:2015-12-15 19:02:43

标签: replace special-characters powershell-v2.0

我的内容存储在文本文件中。其中,第25行的内容低于内容

$userid = $null

现在我想用

替换这一行
$userid = "Chandru"

我试过下面的代码,但它没有帮助我。

$content = Get-content c:\content.text
$oldline = "`$userid = `$null"
$newline = "`$userid = `"chandru`""
$newcontent = $content -replace ("$oldline","$newline")

这对我不起作用。

1 个答案:

答案 0 :(得分:1)

"`$userid"转义PowerShell的$。您需要转义正则表达式的$

$oldline = '\$userid = \$null'
$newline = '$userid = "chandru"'
(Get-Content 'C:\content.text') -replace $oldline, $newline

如果要转义字符串中的所有特殊字符,可以使用[regex]::Escape()