setSubstr()

vgLib.setSubStr() システム関数は、 サブストリング内の各文字を指定された文字に置き換えます。

vgLib.setSubstr() は、以前のバージョンとの互換性の目的で維持される多くの関数の 1 つです。 この意図から、新規のコードでは標準の EGL 演算子を使用できます。

構文

  vgLib.setSubstr(
    target CharType inOut,
    targetSubstringIndex INT in,
    targetSubstringLength INT in,
    source CharType inOut)
target
変更する変数。
targetSubstringIndex
先頭バイトの指標値が 1 である場合に、target のサブストリングの開始バイトを識別します。この指標には、整数リテラルまたは変数 (INT または BIN(9)) を使用できます。
targetSubstringLength
target から派生するサブストリングのバイト数を識別する。 この長さには、整数リテラルまたは変数 (INT または BIN(9)) を使用できます。
source
ターゲット変数が CHAR、MBCHAR、または HEX である場合、ソース変数は 1 バイトの CHAR、MBCHAR、または HEX 変数、あるいは CHAR リテラルにする必要があります。 ターゲットが DBCHAR 変数または UNICODE 変数である場合、ソースは 1 文字の DBCHAR 変数または UNICODE 変数にする必要があります。

エラーに関する考慮事項

V6 の例外互換性 (V6 の例外互換性の使用を参照) を使用している場合、以下の値が sysVar.errorCode で戻されます。
8
指標が 1 より小さいか、ストリングの長さよりも大きい。
12
長さが 1 より小さい。
20
DBCHAR ストリングや UNICODE ストリングの指標が、2 バイト文字の中間を指しています。
24
DBCHAR ストリングや UNICODE ストリングの長さを示すバイト数が、奇数になっています (2 バイト文字の長さは常に偶数になります)。

以下の例は、vgLib.setSubstr() 関数を示しています。

target Char(15) = "abcdefghijklm"; // target is "abcdefghijklm  "
vgLib.setSubstr(target,2,5," "); // target is now "a     ghijklm  "

フィードバック