测试字符串的最佳方法是什么?

时间:2013-02-15 13:19:46

标签: powershell operators

我正在使用这种表示法测试一些字符串

if ($someString -eq "someValue") { ... }

但我在线阅读了一些使用-like运算符

测试值的示例
if ($someString -like "someValue") { ... }

结果似乎在所有情况下都是一样的(注意我在谈论字符串)。是否有任何差异和/或最佳实践可以遵循或没有差异?

2 个答案:

答案 0 :(得分:4)

-eq用于严格平等。

使用-like您可以使用通配符,但在您的情况下,它的作用类似于-eq

编辑: 如果您真的不需要-eq

,最佳做法是使用-like

答案 1 :(得分:-1)

-eq检查$someString是否与$someValue

完全相同

以及何时

-like与通配符一起使用时会检查$someString是否包含$someValue的子字符串,否则它与-eq

相同

-contains - 检查$someString

中有子字符串的天气

实际上-eq是最常用的,使用带有通配符的-like会给你一些意想不到的误报,但是如果你不需要那么严格的检查可以减少所需条件的数量。