@MiddleBack (JavaScript)

指定されたオフセット位置から、指定された文字数分の文字を逆方向に取得して返します。文字数の代わりにサブストリングが指定されている場合は、そのサブストリングが最後に出現する位置を検出し、そのサブストリングの直前または直後の文字を取得して返します。文字数は負数で指定する必要があります。

定義場所

@Functions (JavaScript)

構文

@MiddleBack(value:string, offset:int, endString:string) : string

@MiddleBack(value:string, offset:int, len:int) : string

@MiddleBack(value:string, startString:string, endString:string) : string

@MiddleBack(value:string, startString:string, len:int) : string

パラメータ 説明
value 確認するストリング。
offset 最後の文字からのオフセット。この位置から始まる文字を返します。オフセットに 0 を指定した場合は、ストリングの最終文字が文字取得の開始位置になります。実数は整数に切り捨てられます。
startString サブストリング。ここで指定されたサブストリングが最後に出現する位置を検出し、そのサブストリングの直前の文字を逆方向に取得して返します。 空ストリングを指定した場合、ストリングの最終文字が文字取得の開始位置になります。
len 文字数 (負数)。ここで指定された文字数分の文字を返します。実数は整数に切り捨てられます。この値は負数で指定する必要があります。
endString サブストリング。ここで指定されたサブストリングが最後に出現する位置を検出し、そのサブストリングの直後の文字を返します。空ストリングを指定した場合、ストリングの最終文字が文字取得の終了位置になります。
戻り値 説明
string 取得された文字。

使用法

この関数は、以下の値を返します。

(1) 以下の例では、ストリングの先頭から最初のスペースまでの文字と、最後のスペースから最終文字までの文字を取得して返し、さらに先頭から 7 番目の文字から最後のスペースの直前までの文字を取得して返します。
function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, 0, " ");
var price = @MiddleBack(lineitem, 0, " ");
var description = @Middle(lineitem, 6, " " + price);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(2) 以下の例では、ストリングの先頭から 5 番目までの文字と最後から 6 番目の文字を取得して返し、さらにこのストリングの長さから 13 を引いた文字数を求め、先頭から 7 番目の文字からこの文字数分の文字を取得して返します。

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, 0, 5);
var price = @MiddleBack(lineitem, 0, -6);
var description = @Middle(lineitem, 6, len - 13);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(3) 以下の例では、ストリングの先頭から最初のスペースまでの文字と、最後のスペースから最終文字までの文字を取得して返し、さらに最初のスペースの直後から最後のスペースの直前の文字を取得して返します。

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, "", " ");
var price = @MiddleBack(lineitem, "", " ");
var description = @Middle(lineitem, " ", " " + price);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream

(4) 以下の例では、ストリングの先頭から 5 文字分の文字と最後から 6 文字分の文字を取得して返し、さらにこのストリングの長さから 13 を引いた文字数を求め、最初のスペースの直後からこの文字数分の文字を取得して返します。

function p(stuff) {
	print("<<<" + stuff + ">>>");
}

var lineitem = "Q5212 peaches and cream 001.99";

var len = @Length(lineitem);
var code = @Middle(lineitem, "", 5);
var price = @MiddleBack(lineitem, "", -6);
var description = @Middle(lineitem, " ", len - 13);
p("Code = " + code); // Q5212
p("Price = " + price); // 001.99
p("Description = " + description); // peaches and cream