Ответ 1
PowerShell принципиально нечувствителен к регистру (например, "HEy" -like "hey"
- это True
).
Если вы хотите использовать чувствительную к регистру версию like
, используйте -clike
.
Я пытаюсь отфильтровать объект, у которого есть поле Title, и я хочу проигнорировать регистр. Есть ли способ убедиться, что чувствительность к регистру отключена?
| Where-Object {$_.Title -like "myString"}
PowerShell принципиально нечувствителен к регистру (например, "HEy" -like "hey"
- это True
).
Если вы хотите использовать чувствительную к регистру версию like
, используйте -clike
.
По умолчанию чувствительность к регистру отключена:
PS> 'test','TEST','TeSt','notest' | ? { $_ -like 'test' }
test
TEST
TeSt
Из документации:
По умолчанию все операторы сравнения нечувствительны к регистру. Чтобы сделать оператор сравнения чувствительным к регистру, перед именем оператора ставится
"c"
. Например, чувствительной к регистру версии"-eq"
является"-ceq"
. Чтобы сделать регистр нечувствительным явным, перед оператором добавьте"i"
. Например, явно "нечувствительной к регистру" версией"-eq"
является"-ieq"
.
Для получения дополнительной информации запустите help about_comparison_operators