PowerShell的字符串数组学习指南

930 阅读2分钟

数组是属于相同数据类型的项目的集合;数据类型可以是 "整数"、"浮点数"或 "字符"。然而,字符串只由 "字符"数据类型组成。因此,可以说,字符串是一个只支持字符的数组。将字符串声明为一个数组的现象被称为字符串数组。例如,当你有巨大的字符串格式的数据时,更好的选择是将该字符串存储到一个数组中。PowerShell的字符串数组允许操作数据,例如如果你想检索任何信息,你可以使用各种字符串来实现。在本指南中,我们将演示将字符串作为数组使用。

如何使用PowerShell声明一个字符串数组。

有多种方法可以声明一个字符串数组。本节将列出并讨论创建字符串数组的所有可能方法。所以,让我们深入研究一下。

方法1:

创建字符串数组的一种可能方法是使用下面的方法。

我们在名为 "字符串阵列"的变量中存储了三个字符串。

> $stringarray= @(“this is”, “Microsoft Windows”, “PowerShell terminal”)

方法2:

创建字符串数组的另一种可能是使用PowerShell的System.Collections.Arraylist类方法。下面的命令将帮助你创建一个数组字符串。

> New-Object -TypeName System.Collections.Arraylist

> $stringarr=[System.Collections.Arraylist]@("you are", "working in", "Windows PowerShell")

如何获得字符串阵列变量的数据类型。

在本节中,我们将以**$stringarray** 变量为例。要获得该变量的数据类型,请使用下面给出的PowerShell的cmdlet。

> $stringarray=@("this is", "Microsoft Windows", "PowerShell terminal")

> $stringarray.GetType()

当你运行GetType() cmdlet时,可以看到数据类型被存储在 "Name"列中。如果是数组,变量类型是一个对象,如果是字符串,它将变为字符串。此外,"BaseType"列的值对于字符串来说是 "System.Object",而对于数组来说,它将切换到 "System.Array"。

如何检查数组字符串的长度。

由于我们在**$stringarray**变量中存储了三个字符串,可以用下面的命令检查字符串的长度。

> $stringarray.length

如何在现有的数组字符串中添加文本。

此外,你可以向 "数组字符串 "变量添加更多的值。你要追加的值是运算符**(+=**)。使用下面的命令,向变量 "字符串数组"追加更多的重要性。

> $stringarray += @(“and”, “ran with”, “administrative privileges”)

在追加了三个字符串之后,注意到 "字符串阵列 "变量的长度已经变成了6

如何检查现有数组字符串的支持方法。

一旦你声明了一个字符串数组并想进行各种操作,建议检查该字符串数组支持哪些方法。下面的命令将帮助你获得支持的方法**。**

> $stringarray | Get-Member -MemberType Method

如何在一个字符串数组中找到一个字符串?

在本节中,我们将指导你在一个字符串数组中寻找任何字符串。例如,我们有一个字符串数组变量,其中包含三个字符串。

> $sa=@("Microsoft", "Windows", "PowerShell")

如果你想知道它是否包含 "PowerShell",你必须从 "包含"方法中获得帮助,如下所示。

> $sa.Contains("PowerShell")

如果**$sa** 包含 "PowerShell,";那么它将返回 "True"。

然而,如果你检查的是一个错误的字符串,那么它将返回 "False"。例如,我们搜索了 "ISE",如下所示。

> $sa.Contains("ISE")

如何改变字符串阵列中字母的大小写

人们可以在toUpper()toLower() 选项的帮助下,将字母的大小写改为大写或小写。例如,我们将创建一个字符串数组**$star** 来演示这个方法。

> $star=@("PowerShell", "Command Line", "Terminal")

在PowerShell中写下以下命令,将所有字母改为大写。

> $star=$star.toUpper()

你可以检查**$star**的所有字母都被转换为大写字母。

如果你想把这些字母转换成小写字母;你必须执行以下命令。

> $star=$star.toLower()

所有的字母都被转换为小写。

总结

数组由相同的变量类型组成,而字符串基本上是字符的数组。如果我们深入研究 "字符串阵列"这个短语,我们可以说数组由 "字符阵列"组成。

本文提供了一个关于字符串数组的详细指南,以及如何将字符串声明为一个数组。此外,我们还介绍了声明字符串数组的不同方法,并对字符串数组进行了各种操作。