文字列抽出 (左/右)

左端または右端から文字列を抽出します。

ブロック
テキスト

TARGET = substringFromLeft(INPUT, COUNT);
  1              2           4      3

# 説明
1 [Destination Data]
抽出した文字列の格納先を設定します。
2 文字列を抽出する方向
ブロック
  • [From left]
  • [From right]
テキスト
  • 'substringFromLeft'

  • 'substringFromRight'

文字列を抽出するために使用した方向を選択します。

(例) 文字列: 「ABCDE」、 [Number of characters]: 3
赤い文字列が抽出されます。
  • [From left] が選択された場合: ABCDE
  • [From right] が選択された場合: ABCDE
3 [Number of characters]

抽出する文字数を指定するブロックを設定します。値は 1 以上で、抽出できる文字数以下である必要があります。

2 バイト文字は 1 文字としてカウントされます。

4 [Source Data]
抽出する文字列を格納するソースデータを設定します。

(例)

ブロック

テキスト

Var4 = substringFromLeft(Var3,Var1);

オペレーション例

[Source Data] の変数

[Way to extract]

[Number of characters]

[Destination Data] の変数

コメント

対象文字列

最大バイト数 格納する抽出文字列
ABCDE From Left 3 5ABC -
0 5(なし)
変換された文字列は、 [Number of characters] が 1 より小さいため格納されません。「オペレーションの結果」オペレーションで失敗と判断されます。
3.6 5ABC
[Number of characters] の小数点以下は除外されます。
From Right 3 5CDE -
-1 5(なし)
変換された文字列は、 [Number of characters] が 1 より小さいため格納されません。「オペレーションの結果」オペレーションで失敗と判断されます。
3.7 5CDE
[Number of characters] の小数点以下は除外されます。
AB From Left 3 5(なし)
[Number of characters] が取得可能な文字数を超えているため、文字列は格納されません。「オペレーションの結果」オペレーションで失敗と判断されます。
From Right 3 5(なし)
[Number of characters] が取得可能な文字数を超えているため、文字列は格納されません。「オペレーションの結果」オペレーションで失敗と判断されます。
ABCD(0x00)C From Right 3 5BCD
NULL (0x00) がある場合、文字列はそこで終了します。
AB(0x00)CD From Left 3 5(なし)
文字列は格納されません。NULL (0x00) がある場合、文字列はそこで終了します。結果として、[Number of characters] が取得可能な文字数を超えます。「オペレーションの結果」オペレーションで失敗と判断されます。
AB(0x00)CDEF From Right 3 5(なし)
文字列は格納されません。NULL (0x00) がある場合、文字列はそこで終了します。結果として、[Number of characters] が取得可能な文字数を超えます。「オペレーションの結果」オペレーションで失敗と判断されます。
ABCDEFGH From Left 6 5(なし)
変換された文字列は、格納できる最大バイト数を超えていたため格納されません。「オペレーションの結果」オペレーションで失敗と判断されます。
From Right 6 5(なし)
変換された文字列は、格納できる最大バイト数を超えていたため格納されません。「オペレーションの結果」オペレーションで失敗と判断されます。
AあB

From Left

3 5AあB
文字列は、 [Number of characters] に基づいて格納されます。 *1

From Right

2 5あB
文字列は、 [Number of characters] に基づいて格納されます。 *1

*1 [Destination Data] に指定された変数の最大バイト数が取得した文字列のサイズよりも小さい場合、オペレーションは失敗します。最大バイト数は、[Destination Data] に指定された変数のエンコーディングによって異なります。