在批處理指令碼中檢索子字串

MD Aminul Islam 2022年5月31日
在批處理指令碼中檢索子字串

字串是一個字元陣列,子字串是字串的特定部分。有時我們需要檢索子字串以用於各種目的,例如匹配或查詢特定的子字串。

本文將解決字串獲取子字串的方法。

從批處理指令碼中的字串中檢索子字串

我們需要遵循這些通用格式從字串變數中檢索特定字元。

%VARIABLE:~START_INDEX%
or
%VARIABLE:~START_INDEX,END_INDEX%

START_INDEX 是一個數值,表示字串的起始點。你可以使用負數,但負數將從字串的終點向後計數。

END_INDEX 是一個數值,表示字串的結束點。你可以使用負數,但負數將從字串的終點向後計數。

請記住,索引從 0 開始,而不是 1

在下面的示例中,我們將宣告一個包含數字和字母字元的字串變數。我們將從字串中檢索數字和字母字元作為子字串。

批處理指令碼:

@echo off
SET testString=abcdefgh123456789
SET numericChars=%testString:~8,16%
SET normalChars=%testString:~0,7%
ECHO Numeric characters: %numericChars% Alphabetic characters: %normalChars%

在第一行程式碼(SET testString=abcdefgh123456789)中,我們宣告瞭一個名為 testString 的變數,併為其分配了數字和字母字元。

在第二行程式碼(SET numericChars=%testString:~8,16%)中,我們檢索字串的數字字元部分,即 123456789,並將結果分配給名為 numericChars 的變數。開始索引是 8,結束索引是 16

第三行程式碼(SET normalChars=%testString:~0,7%),我們檢索字串 abcdefgh 的字母字元部分並將結果分配給名為 normalChars 的變數。起始索引為 0,結束索引為 7。

我們使用最後一行程式碼(ECHO Numeric characters: %numericChars% Alphabetic characters: %normalChars%)列印了我們的結果。

輸出:

Numeric characters: 123456789 Alphabetic characters: abcdefg

請記住,這裡的示例是使用批處理指令碼編寫的,並且只能在 windows CMD 環境中執行。

MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

相關文章 - Batch Script