2016-04-21 4 views
1

Я хочу заменить мои строки на символ.Заменить строку с символами

До:

Test1
Test2
Test3
Test4

После:

Test1 | Test2 | Test3 | Test4

Для й как я попробовал следующий сценарий:

$a=Get-Content "C:\Users\Administrator\Desktop\test2.txt" 
$a=$a.Replace("`r`n","|") 

Но это дает мне следующее:

Test1 TEST2 Test3 test4

Что я сделал не так? Я задаю аналогичный вопрос пару часов назад: Replace Word with a Linebreak

Но это не поможет мне в моей текущей проблеме.

+1

'$ а = $ а присоединиться '|'' – PetSerAl

+0

работы :) Но почему "|" «знает», куда они должны идти? – jofri

+0

'|' просто присоединяются к элементам вашего массива. Таким образом, это просто происходит между элементами. – PetSerAl

ответ

1

Попробуйте это:

$a=Get-Content "C:\Users\Administrator\Desktop\test2.txt" -raw 
$a=$a -Replace '\n', '|' 

-raw параметр заставит содержимое быть threated в виде одной строки

+0

Работает отлично! Большое спасибо – jofri

+0

Я думаю, что '-Raw' недоступно в PS3 или выше – sodawillow

+0

@sodawillow вне конечно! –

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