%SUBST (取得子字串)

%SUBST(string:start {:length {: *NATURAL | *STDCHARSIZE }})

%SUBST 傳回部分引數字串。 它也可以 作為具有 EVAL 作業碼之指派的結果。

start 參數代表子字串的起始位置。

長度參數代表子字串的長度。 如果未指定,則長度為字串參數的長度減去起始值加 1。

字串必須是 字元、圖形或 UCS-2資料。 起始位置和長度可以是任何具有零小數位數的數值或數值表示式。 起始位置必須大於零。 長度可能大於或等於零。

當字串參數是可變長度時,會根據現行長度而非長度上限來檢查其他參數的值。

第三或第四個參數可以是 *NATURAL 或 *STDCHARSIZE ,以置換陳述式的現行 CHARCOUNT 模式。 如果指定此參數,則它必須是最後一個參數。
  • 指定 *NATURAL 以指出 %SUBST 在 CHARCOUNT NATURAL 模式下運作。 起始位置和長度是以字元來測量,而不是以位元組或雙位元組來測量。 例如,如果基本字串是具有值 'ábç12' 的 UTF-8 字串,則起始位置 3 會參照 'ç' ,因為它是第三個字元。
  • 指定 *STDCHARSIZE 以指出 %SUBST 以 CHARCOUNT STDCHARSIZE 模式運作。 在前一個範例中,在 CHARCOUNT STDCHARSIZE 模式下,起始位置 3 會參照 'b' ,因為它是第三個位元組。 字元 'á' 和 'ç' 是 2 位元組字元。
請參閱 依每個字元的自然大小處理字串資料字元資料類型
由於 /CHARCOUNT 編譯器指引或 CHARCOUNT Control 關鍵字, 附註: %SUBST 也可以在 CHARCOUNT NATURAL 模式下運作。

當指定為定義規格關鍵字的參數時,參數必須是文字或代表文字的已命名常數。 在開放式計算規格上指定時,參數可以是任何表示式。

如需相關資訊,請參閱 字串作業內建函數