删除换行符 powershell

问题描述 投票:0回答:4

我的数据出现换行问题。该数组是用一个输出字符串和 -split 组成的。如果您想查看脚本的那部分,请告诉我。

foreach ($item in $array) {
"_"+$item+"_"
}

输出:

_
itemname_

期望的输出:

itemname

我试过插入:

$item.replace('`','')

没有任何改变。有什么想法吗?

powershell line-breaks
4个回答
10
投票

好的,我认为这应该可行。我的印象是你想要结果中的那些下划线。

$array -replace "`n|`r"

1
投票

默认情况下,'Get-Content' 命令的默认分隔符为新行 ' '.创建一个服装参数,然后执行替换命令。希望这可以帮助。

Get-ChildItem | Get-Content -Delimiter "~" | foreach { $_ -replace "`r|`n","" }

0
投票

那么如何在 $item 级别应用 mjolinor 的代码,例如:

foreach ($item in $array) {
  $item -replace '^|$','_'
}

虽然我期望您已经得到相同的结果,但您的字符串中嵌入了换行符。

我自己无法在 $array 中设置相同的条件,也许您可以发布该代码。

这个有用吗?:

foreach ($item in $array) {
  $item.Trim() -replace '^|$','_'
}

0
投票
foreach ($item in $array) {
"_"+$item.Trim()+"_"
}

应该做你想做的事。

© www.soinside.com 2019 - 2024. All rights reserved.