вы можете поставить регулярное выражение в виде строки.Это вернет Schnitzel
$data = @(
"Haus",
"Maus",
"Laus",
"Schnitzel",
"Elefant"
)
$Regex = '.*Schnitzel.*'
$test = $data | ? { $_ -match $Regex }
Write-Host $test
, если вы хотите проверить более одного регулярного выражения, используйте |
для их разделения
Это приведет к выводу Schnitzel
и Maus
$Regex = '.*Schnitzel.*|.*Maus.*'
Это вернет Schnitzel
, Maus
, Laus
и Haus
$Regex = '.*Schnitzel.*|.*aus.*'
РЕДАКТИРОВАТЬ :
Вытакже может иметь массив регулярных выражений и объединять их с помощью |
:
$RegexArray = @(
'.*Schnitzel.*',
'.*Maus.*'
)
$Regex = $RegexArray -join '|'
$test = $data | ? { $_ -match $Regex }