slice (String.slice メソッド)

public slice(start: Number, end: Number) : String

返されるストリングには、start 文字から end 文字の前までのすべての文字が含まれます。元の String オブジェクトは変更されません。end パラメータを指定しないと、サブストリングの終わりはストリングの終わりです。start で指定されたインデックスの文字が、end で指定されたインデックス文字と同じか、その右側にある場合、メソッドは空の文字列を返します。

使用できるバージョン : ActionScript 1.0、Flash Lite 2.0

パラメータ

start: Number - スライスの始点のゼロから始まるインデックス。start が負の数値の場合、始点はストリングの終わりから決定されます。このとき、-1 が最後の文字になります。

end: Number - スライスの終点のインデックスより大きい整数値。end パラメータで指定されたインデックス位置の文字は、取り出されるストリングには含まれません。このパラメータを省略すると、String.length が使用されます。end が負の数値の場合、終点はストリングの終わりからカウントされて決定されます。このとき、-1 が最後の文字になります。

戻り値

String - 指定されたストリングのサブストリング。

次の例では、変数 my_str, を作成し、それに String 値を割り当てた後、start パラメータと end パラメータにさまざまな値を使用して slice() メソッドを呼び出します。slice() の各呼び出しは、[出力] パネルに出力を表示する trace() ステートメントでラップされています。

// ストリングリテラルのインデックス値
// 正のインデックス : 0 1 2 3 4
// ストリング : L o r e m
// 負のインデックス : -5 -4 -3 -2 -1

var my_str: String = "Lorem";

// 最初の文字をスライス
trace("slice(0,1): "+my_str.slice(0, 1)); // slice(0,1) を出力する : L
trace("slice(-5,1): "+my_str.slice(-5, 1)); // slice(-5,1) を出力する : L

// 中の 3 つの文字をスライス
trace("slice(1,4): "+my_str.slice(1, 4)); // slice(1,4) : ore
trace("slice(1,-1): "+my_str.slice(1, -1)); // slice(1,-1) : ore

// 開始が左端にないため、空のストリングを返すスライス
trace("slice(1,1): "+my_str.slice(1, 1)); // slice(1,1): 
trace("slice(3,2): "+my_str.slice(3, 2)); // slice(3,2): 
trace("slice(-2,2): "+my_str.slice(-2, 2)); // slice(-2,2): 

// end パラメータを省略したスライスが String.length (5 に等しい) を使用
trace("slice(0): "+my_str.slice(0)); // slice(0): Lorem
trace("slice(3): "+my_str.slice(3)); // slice(3) : em

"ActionScript" サンプルのフォルダの "Strings.fla" ファイルにも例が収められています。通常、このフォルダへのパスは次のようになります。

関連項目

substr (String.substr メソッド), substring (String.substring メソッド)