在 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