#string #powershell
#строка #powershell
Вопрос:
Я слишком долго зацикливался на этой задаче. Я пытаюсь проверить, есть ли переменная string($email) в списке строк ($emaillist).
итак, если
$email = "you@email.com"
$t = $emaillist | Select-String $email
#If statement#$
if($t)
{
write-host "yes" -ForegroundColor Green
}
else
{
write-host "No" -ForegroundColor red
}
Это не работает, потому что часть строки передается. Итак, я думаю, мне нужно использовать какое-то регулярное выражение? ‘^ $’
Не уверен, как использовать регулярное выражение и переменную?
Любая помощь приветствуется, спасибо
Ответ №1:
Если $emaillist
это действительно список строк, зачем использовать Select-String
??
Просто сделайте
if ($emaillist -contains $email) {
write-host "yes" -ForegroundColor Green
}
else {
write-host "No" -ForegroundColor red
}
Ответ №2:
if ($emaillist -contains $email){
write-host "yes" -ForegroundColor Green
}
вы также можете использовать -in
некоторые примеры
$emaillist = @('abc@gmail.com','edf@gmail.com')
$email = 'abc@gmail.com'
$emaillist -contains $email ## true
$email -in $emaillist ## returns true