Array.vbsは、配列を操作するユーティリティ関数を提供します。
name | description |
---|---|
array_create(size) | 指定された要素数の配列を作成します。 |
array_size( ary ) | 配列の要素数を返します。 |
array_insert( ary, idx, value ) | 配列の指定位置に要素を挿入します。 |
array_remove( ary, idx ) | 配列の指定位置の要素を削除し、配列全体を縮小します。 |
array_push( ary, value ) | 配列の最後尾に要素を追加します。 |
array_pop( ary ) | 配列の最後尾から値を取り出し、配列を縮小します。 |
array_shift( ary ) | 配列の各要素を一つ前にずらします。 |
array_unshift( ary, value ) | 配列の各要素を一つ後ろにずらします。 |
array_find( ary, find_value ) | 配列の先頭から指定された値に一致する要素を探索します。 |
array_filter( ary, ByVal expr, opt ) | 配列の各要素を評価し、マッチした要素を抽出します。 |
array_foreach( ary, ByVal stmt, opt ) | 配列の各要素に指定された処理を実行します。 |
array_copy( ary, ary_to ) | 配列をコピーします。 |
array_join( ary, separator ) | 配列要素を指定されたセパレータで文字列結合します。 |
array_to_string( ary ) | 配列を文字列化します。 |
指定された要素数の配列を作成します。
配列の下限は0、上限は指定されたサイズ-1です。
@param size 配列の要素数
@return 配列
配列の要素数を返します。
@param ary 配列
@return 配列の要素数
配列の指定位置に要素を挿入します。
指定された位置及びそれ以降の要素は、一つずつ後ろにずらされます。
配列の最後に要素を追加する場合には、最後の要素位置+1を指定します。
@param ary 配列
@param value 要素を追加する位置
@param value 追加する要素の値
@return 拡張後の要素数
配列の指定位置の要素を削除し、配列全体を縮小します。
指定された位置及びそれ以降の要素は、一つずつ前にずらされます。
@param ary 配列
@param idx 削除する要素の位置
@return 削除された要素
配列の最後尾に要素を追加します。
@param ary 配列
@param value 追加する要素の値
@return 拡張後の要素数
配列の最後尾から値を取り出し、配列を縮小します。
@param ary 配列
@return 取り出された要素
配列の各要素を一つ前にずらします。
押し出された元の先頭要素は、戻り値として返されます。
要素数0の配列の場合、配列の伸縮は行われず、Emptyが返されます。
@param ary 配列
@return 元の先頭要素。または、Empty
配列の各要素を一つ後ろにずらします。
空いた先頭要素には指定された引数がセットされます。
@param ary 配列
@param value 先頭要素にセットする値
@return 拡張後の要素数
配列の先頭から指定された値に一致する要素を探索します。
@param ary 配列
@param find_value 探索する値
@return 一致した要素位置、見つからなければ配列下限-1
配列の各要素を評価し、マッチした要素を抽出します。
評価は引数のexprに指定された評価式によって行われます。
評価式は、trueまたはfalseを返す必要があります。
評価式には、ary, expr, optionの引数への参照と、value, indexの組み込み変数、
スクリプト内のグローバルなリソースが使用できます。
aryは、array_filterに渡された配列を示します。
optは、array_filterに渡されたオプション引数です。
valueは、配列の要素を示します。
iは、要素の位置を示す0から開始したインデックスを示します。
以下は、valueが1より大きい要素を抽出します。
set re = new RegExp
re.pattern = ".*\.txt$"
new_array = array_filter( Array(0, 1), "value > 1", re )
以下は、RegExpを用いて、".txt"で終了する文字列の要素を抽出する例です。
set re = new RegExp
re.pattern = ".*\.txt$"
new_array = array_filter( Array("a.txt", "b.csv"), "opt.test( ary(i) )", re )
@param matcher 各要素を評価するオブジェクト
@return マッチした要素によって構成された配列
配列の各要素に指定された処理を実行します。
処理は引数のstmtに指定されたステートメントによって行われます。
ステートメントには、ary, expr, optionの引数への参照と、value, indexの組み込み変数、
スクリプト内のグローバルなリソースが使用できます。
aryは、array_foreachに渡された配列を示します。
optは、array_foreachに渡されたオプション引数です。
valueは、配列の要素を示します。
iは、要素の位置を示す0から開始したインデックスを示します。
以下は、配列の各要素にRegExp.Executeを実行し、戻り値であるMatchesオブジェクトの配列を生成する例です。
set re = new RegExp
re.pattern = ".*\.txt$"
matches = array_foreach( Array("a.txt", "b.csv"), "opt.Execute(value)", re )
以下は、配列の各要素に1を加算した配列を生成します。
set re = new RegExp
re.pattern = ".*\.txt$"
new_values = array_foreach( Array(0, 1), "value + 1", re )
@param ary 配列
@param stmt 各要素に適用するステートメント
@param opt オプション引数
@return 実行結果によって構成された配列
配列をコピーします。
@param ary 配列
@param ary_to コピー先の配列
@return コピーされた要素の数
配列要素を指定されたセパレータで文字列結合します。
@param ary 配列
@param separator 要素を区切る文字列
@return 結合後の文字列
配列を文字列化します。
@param ary 配列
@return 文字列化された配列