如何从Powershell上的变量添加条件



我想添加一个输入变量,允许我添加任意多的条件。

例如:添加-and ($_ -notmatch '67'的变量

$file = "Input27532.csv"
$outFile = "Output27532.csv"
$content= Get-Content $file | Where-Object { ($_ -notmatch '24') -and ($_ -notmatch '67')  } | Set-Content $outfile

使用单个-notmatch操作和regex交替(|(,这允许您传递开放数量的子字符串:

$valuesToExclude = '24', '67', '42'
$content= Get-Content $file | 
Where-Object { $_ -notmatch ($valuesToExclude -join '|') } | 
Set-Content $outfile

注意:以上假设$valuesToExclude只包含不包含正则表达式元字符的值(例如.(;如果有这种可能性,并且您希望将这些字符从字面上解释为,请对值调用[regex]::Escape()
($valuesToExclude.ForEach({ [regex]::Escape($_) }) -join '|')

相关内容

  • 没有找到相关文章

最新更新