PowerShell 包含运算符
PowerShell 中有不同的运算符可以过滤/比较或查找与指定输入字符串匹配的元素。 -contains
是主要的比较运算符之一,被归类为包含类型的运算符。
有四种主要的包含类型运算符。
-contains
-notcontains
-in
-notin
在本文中,我们只关注 -contains
运算符。如果匹配,此运算符始终返回布尔值 (true/false)。此外,性能方面的 -contains
运算符返回结果的速度非常快,因为一旦找到第一个匹配项,它就会停止比较输入。
PowerShell 中的 -contains
运算符
此运算符可用于检查集合是否包含特定元素。它的语法如下。
[set/collection] -contains [test-value or test-object]
[set/collection]
可以是一组字符串值(逗号分隔),例如,"Hello"
或 "FOX", "2ndLane"
。
[test-value or test-object]
可以是一个元素或一组元素(集合),例如,"Hello"
或 "Hello", "FOX", "No2"
。
检查某个元素
- 示例 01:
"Hello", "FOX", "2ndLane" -contains "2ndLane"
输出:
True
输入元素/值是"2ndLane"
,它可以位于左侧集合/集合中。因此,输出/结果显然是 True
。
- 示例 02:
"Hello", "FOX", "2ndLane" -contains "NotInTheCollection"
输出:
False
输入元素/值是"NotInTheCollection"
,它不包含在右侧集合中。因此,上述命令被评估为 False
。
关于 -contains
运算符的重要事实是它检查给定集合/集合中的确切输入元素。当部分/子字符串作为输入元素时,该命令将被评估为 False
。
- 示例 03:
"Hello", "FOX", "FullStringGiven" -contains "StringGiven"
输出:
False
在上面的示例中,输入元素是 "StringGiven"
,但它是右侧集合的 "FullStringGiven"
元素的子字符串。因此,输入元素与右侧集合中的精确元素不匹配,结果如预期的那样为 False
。
在 PowerShell 中使用 -contains
运算符检查一组元素/集合
-contains
运算符的最大优点之一是它可用于查找给定集合/集合是否与输入集合匹配。重要的是要记住,运算符检查左侧(给定集合)和右侧(输入集合/测试集合)是否存在相同的实例。这意味着当输入对象(测试对象)是一个集合时,这些包含运算符使用引用相等。
示例 01
$leftsideobj = "Hello", "NewString1"
在这里,我们将 $leftsideobj
变量分配给元素集(集合)。
$leftsideobj, "AnotherString" -contains $leftsideobj
然后,我们使用 -contains 运算符来查找匹配项。
输出:
True
该命令已被评估为 True
。因为输入集合是 $leftsideobj
,并且左侧集合中存在相同的实例。这意味着已经实现了引用相等。因此,结果为 True
。
示例 02
$newleftsideobj = "Hello", "Test"
在这里,我们将 $newleftsideobj
变量分配给包含"Hello"
和"Test"
元素的集合。
`"Hello", "Test", "NewString1" -contains $newleftsideobj`
输出:
False
上述命令被评估为 False
。你可以看到输入集合(右侧)是 $newleftsideobj
,其中间接包含"Hello"
和"Test"
两个元素。如果你注意到左侧,我们可以使用"Hello"
和"Test"
元素。但它不满足引用相等。这就是为什么输出是 False
的原因。
相关文章
在 Windows PowerShell 中获取命令行参数
发布时间:2024/03/04 浏览次数:358 分类:编程语言
-
本文将解释我们如何使用 PowerShell 的参数函数处理命令行参数,参数如何工作,我们如何使用 PowerShell 参数将值传递给参数,以及定义参数的基本方法是什么。
Windows PowerShell 中的 Base64 编码
发布时间:2024/03/04 浏览次数:332 分类:编程语言
-
本文将展示如何编码和解码 base64 字符串。Windows PowerShell 当前版本没有本机命令,因此我们将向你展示如何执行此操作的替代方法。
在 Windows PowerShell 中写入输出
发布时间:2024/03/04 浏览次数:259 分类:编程语言
-
本文将向你展示如何在 Windows PowerShell 中编写或打印输出。本文还将区分多个 write cmdlet 并解释它们的意义。
在 Windows PowerShell 中设置 PATH 环境变量
发布时间:2024/03/04 浏览次数:350 分类:编程语言
-
本文将展示在 Windows PowerShell 中设置路径环境变量的正确方法。本文还展示了如何在持久性和非持久性方法中设置变量。
在 Windows PowerShell 中打印环境变量
发布时间:2024/03/04 浏览次数:869 分类:编程语言
-
本文将讨论什么是环境变量以及如何使用多个 Windows PowerShell 命令打印它们。
在 PowerShell 中注释代码
发布时间:2024/03/04 浏览次数:363 分类:编程语言
-
本文将展示在 Windows PowerShell 中注释代码的多种方法。本文还介绍了注释代码时的一些最佳实践。
在 PowerShell 中执行 LDAP 查询
发布时间:2024/03/04 浏览次数:304 分类:编程语言
-
本文将深入了解如何使用 Active Directory 过滤器和 LDAP 过滤器。