如何从 Powershell 上的变量添加条件?
How to add conditions from a variable on Powershell?
我想添加一个输入变量,允许我添加任意数量的条件。
Ex : 用于添加的变量 -and ($_ -notmatch '67'
$file = "\Input532.csv"
$outFile = "\Output532.csv"
$content= Get-Content $file | Where-Object { ($_ -notmatch '24') -and ($_ -notmatch '67') } | Set-Content $outfile
使用 single -notmatch
operation with regex alternation (|
),它允许你通过一个开放-结束的子字符串数:
$valuesToExclude = '24', '67', '42'
$content= Get-Content $file |
Where-Object { $_ -notmatch ($valuesToExclude -join '|') } |
Set-Content $outfile
注意:以上假定 $valuesToExclude
仅包含不包含正则表达式 元字符 的值(例如,.
);如果有机会,并且您希望按字面意思 解释这些字符 ,请对值调用 [regex]::Escape()
:
($valuesToExclude.ForEach({ [regex]::Escape($_) }) -join '|')
我想添加一个输入变量,允许我添加任意数量的条件。
Ex : 用于添加的变量 -and ($_ -notmatch '67'
$file = "\Input532.csv"
$outFile = "\Output532.csv"
$content= Get-Content $file | Where-Object { ($_ -notmatch '24') -and ($_ -notmatch '67') } | Set-Content $outfile
使用 single -notmatch
operation with regex alternation (|
),它允许你通过一个开放-结束的子字符串数:
$valuesToExclude = '24', '67', '42'
$content= Get-Content $file |
Where-Object { $_ -notmatch ($valuesToExclude -join '|') } |
Set-Content $outfile
注意:以上假定 $valuesToExclude
仅包含不包含正则表达式 元字符 的值(例如,.
);如果有机会,并且您希望按字面意思 解释这些字符 ,请对值调用 [regex]::Escape()
:
($valuesToExclude.ForEach({ [regex]::Escape($_) }) -join '|')