在 PowerShell 中提取子字符串
Marion Paul Kenneth Mendoza
2023年1月30日
2022年5月16日
作为 Windows 管理员的一个典型场景是找出一种方法来在称为子字符串的字符串中查找特定的文本片段。Windows PowerShell 使查找子字符串变得容易。
本文将讨论使用 PowerShell 的字符串库有效地提取字符串中的子字符串。
在 PowerShell 中使用 Substring()
方法提取子字符串
我们可以使用 Substring()
方法在字符串中查找字符串。例如,也许我们有一个像 'Hello World is in here Hello World!'
这样的字符串,而你希望找到前四个字符。
示例代码:
$sampleString = 'Hello World is in here Hello World!'
$sampleString.Substring(0,5)
输出:
Hello
传入 Substring()
方法的第一个参数是最左边字符的位置,即'H'
。要传递的第二个参数是最右边的字符位置,即空格字符。
Substring()
方法返回第二个字符中字符位置之前的所有字符。
在 PowerShell 中使用 Length
方法动态查找子字符串
使用字符串 $sampleID = 'John_Marc_2021'
并希望找到最后四个字符,而不是像下面的示例那样执行操作。
示例代码:
$sampleID = 'John_Marc_2021'
$sampleID.SubString(0,4)
输出:
John
我们可以用 $sampleID.Length - 4
参数替换 0
,我们不需要提供第二个参数。Length
字符串方法返回最后一个字符的位置。
使用字符串的 Length
方法,即给定字符串中的字符总数,并从该计数中扣除,我们可以动态地挑选子字符串。
示例代码:
$sampleID = 'John_Marc_2021'
$sampleID.SubString($sampleID.Length - 4) # The - 4 in the expression will subtract the Length of the substring.
输出:
2021
如果我们不指定结束位置,PowerShell 子字符串方法将始终默认为最后一个字符位置。
Author: Marion Paul Kenneth Mendoza
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn