2015-12-15 5 views
1

У меня есть содержимое, хранящееся в текстовом файле. В том, что линия 25 имеет ниже содержаниеКак заменить специальную строку символа на специальный символ новой строки

$userid = $null 

Теперь я хочу, чтобы заменить эту строку

$userid = "Chandru" 

Я попытался с ниже код, но это не помогло мне.

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

Это не работает для меня.

ответ

1

"`$userid" избегает $ для PowerShell. Вы должны избежать $ регулярного выражения:

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

Вы можете использовать [regex]::Escape(), если вы хотите, чтобы избежать всех специальных символов в строке.

Смежные вопросы