首页 > 解决方案 > 替换变量中的 CR 和 LF

问题描述

我有一堆文本文件,我尝试在其中查找并计算两个字符字符串的出现次数。

找到后,我在变量中有值,并将该值添加到数组中。

我的问题是我的变量中的值包含我无法删除的 CR 和 LF。

我像这样加载我的数据:

$arrayToSearch = Get-Content $myFile | Select-String -Pattern $mySearchString

foreach($lineToProcess in $arrayToSearch)
{
  $myVar = ($lineToProcess -split $leadingStringPattern) -split $trailingSringPattern

  #here I need $myVar to only contain AB and not any Cr and/or Lf
}

我尝试了这些不同的变体:

$myVar = $myVar -replace '(?:\s|\r|\n)',''

$myVar = $myVar.replace("\n","")

$myVar = $myVar.name.substring(0,2)

$myVar = $myVar -split "\n"

$myVar = $myVar -split "`r`n"

$myVar = $myVar -replace "`t|`n|`r",""

$newLine = [environment]::NewLine
$myVar = $myVar -replace $newLine,""

没有工作。还有什么建议吗?

我得到什么(CrLf=回车和换行):

肌酸

ABCrLf

肌酸

我想要的是:

AB

标签: powershell

解决方案


推荐阅读