トップページへ | [ 一覧 | 検索 | 最終更新 ] [ 差分 | 履歴 | 凍結 ] |
AYA Version5 システム関数†AYA Version5 マニュアルも参照してください。
ACOS†アーク・コサインを返します。引数の単位はradianです。 ANY†文字列を与えた場合、それを簡易配列と見なして要素のうちの一つを無作為に選び返します。変数で与えた場合はそのデリミタが考慮されます。 汎用配列を与えた場合はその要素のうちの一つを無作為に選び返します。 整数もしくは実数を与えた場合はそれがそのまま返ります。引数が無いときは空の文字列を返します。 選択した序数はLSOで取得できます。 ARRAYSIZE†
簡易配列、もしくは汎用配列の要素数を返します。 ASEARCH†汎用配列から値をひとつ検索します。第一引数にキー値を、第二引数以降に汎用配列を指定(簡易配列は不可)。 最初に見つかった要素の序数が返ります。見つからなかった場合は-1。 _tea = ("鉄観音", "烏龍", "やぶきた", "ジャスミン") ipod = ASEARCH("烏龍", _tea) ipodには 1 が格納されます。 nyaoh = ASEARCH("猫", "キリン", "猿", "ぞう", "猫", "兎") nyaohには 3 が格納されます。 アルゴリズムは先頭から逐次比較する単純な線形探索ですので、処理に要する時間は配列サイズに比例して増大します。 ASEARCHEX†汎用配列から値を検索します。第一引数にキー値を、第二引数以降に汎用配列を指定(簡易配列は不可)。 発見された要素の序数が列挙された汎用配列が返ります。見つからなかった場合はIARRAY。 _tea = ("鉄観音", "烏龍", "やぶきた", "烏龍", "ジャスミン") ipod = ASEARCHEX("烏龍", _tea) ipodには汎用配列 (1,3) が格納されます。 ASIN†アーク・サインを返します。引数の単位はradianです。 ATAN†アーク・タンジェントを返します。引数の単位はradianです。 BINSTRTOI†
2進数値文字列を整数へ変換します。引数が異常の場合は0を返します。 CEIL†
実数の小数点以下を切り上げます。 CHARSETLIB†外部ライブラリとの通信部で使用する文字コードを指定します。以下のうちひとつを選択します。
LOADLIBの直前に指定してください。 LOADLIB単位に異なる文字コードを設定可能です。 デフォルトの文字コードは基礎設定ファイルのcharsetエントリで設定した値です。 戻値はありません。 CHR†
UCS-2コードから1文字を返します。 CHRCODE†
指定された文字列先頭の1文字についてUCS-2文字コードを返します。 COS†
コサインを返します。引数の単位はradianです。 CUTSPACE†
文字列左右端に空白文字およびタブ文字がある場合、それらを取り除きます。 CVINT†
引数に整数値の形式を持つ文字列が格納された変数を指定すると、整数に変換して格納しなおします。 CVREAL†引数に実数値の形式を持つ文字列が格納された変数を指定すると、実数に変換して格納しなおします。 CVSTR†
引数に変数を指定すると、内容を文字列に変換して格納しなおします。 ERASE†
文字列の指定部分を削除します。 ERASEVAR†
指定された変数を削除します。引数には変数そのものでなく変数名の文字列を与えてください。 EVAL†与えられた文字列を単一の文スクリプトとして実行します。 たとえば以下のコードは変数iに1を代入します。 EVAL("i=1") 文にはエスケープシーケンスが存在しません。ダブルクォートを文字列に内包する場合はCHR(34)を使用してください。たとえば変数iに"test"を代入するには以下のように記述します。 EVAL("i=%(CHR(34))test%(CHR(34))") %の展開を実行時に行いたい場合も、%をCHR(37)としてください。 以下の例は "%(foo)" を実行します。 EVAL("%(CHR(34))%(CHR(37))(foo)%(CHR(34))") EVAL結果を文字列に変換する TOSTR(EVAL(<i>"formula"</i>)) と埋め込み展開 "%(<i>formula</i>)" は同じ結果をもたらします。 FCHARSET†ファイル書込み/読み取りで使用する文字コードを指定します。以下のうちひとつを選択します。
FOPENの直前に指定してください。 ファイル単位に異なる文字コードを設定可能です。 FCLOSE†
FOPENで開いたファイルを閉じます。 FCOPY†
ファイルをコピーします。 戻値0/1=失敗/成功。 FDEL†
指定したファイルを削除します。 戻値0/1=失敗/成功。 FENUM†
指定位置に存在するファイル名/ディレクトリ名を列挙し、カンマ区切り文字列として返します。 第二引数にデリミタを指定できます。 FLOOR†
実数の小数点以下を切り捨てます。 FMOVE†
ファイルを移動します。 第一引数が移動対象ファイル名、第二引数が移動先のディレクトリ名です。フルパス指定可能。~相対パスの場合はDLL loadで渡された位置が基準となります。 戻値0/1=失敗/成功。 FOPEN†
ファイルをオープンします。
戻値0/1/2=失敗/成功/既にオープンしている。 FREAD†
読取りモードで開いているファイルから1行読み取ります。 ファイル終端に達した際は-1を返します。 FRENAME†
ファイル名を変更します。 FSIZE†
指定されたファイルのサイズ(バイト数)を取得します。 FWRITE†
書き込みモードで開いているファイルに文字列を書き込みます。 戻値はありません。 FWRITE2†
書き込みモードで開いているファイルに文字列を書き込みます。 GETDELIM†変数に設定されているデリミタ(簡易配列字の区切り文字)を返します。デフォルトのデリミタはカンマです。 GETLASTERROR†
直前に発生したシステム関数エラーのコードを返します。コードは以下の通りです。
この関数が返す値はSETLASTERROR関数で設定することもできます。 GETLASTERRORを使用して、エラーが起きそうな場所を確実にチェックするには以下のようにすると良いです。 SETLASTERROR(0) (システム関数を使用している何らかの処理) if !GETLASTERROR { "エラーが発生しました。" } GETMEMINFO†
動作環境のメモリ情報を取得します。結果は以下の汎用配列で返されます。
GETSETTING†動作中の文に設定されている情報を返します。 第一引数に取得したい情報を示す番号を指定します。
GETSTRBYTES†文字列を格納するために必要なバイト数を返します。
第二引数は省略可能で、省略時は0(Shift_JIS)となります。 GETTICKCOUNT†
OSが起動してからの経過時間を返します。単位ms。 GETTIME†
現在の日時情報を取得します。結果は以下の汎用配列で返されます。
GETTYPE†
値の型を得ます。
HEXSTRTOI†
16進数値文字列を整数へ変換します。引数が異常の場合は0を返します。 IARRAY†空の汎用配列を返します。 INSERT†
文字列を挿入します。 ISFUNC†
指定した名前の関数が存在するかを返します。 0/1/2=なし/関数/システム関数 ISINTSTR†与えられた文字列を整数として解釈可能なら1を、それ以外で0を返します。 ISREALSTR†与えられた文字列を実数として解釈可能なら1を、それ以外で0を返します。 ISVAR†指定した名前の変数が存在するかを返します。 0/1/2=なし/グローバル変数/ローカル変数 LETTONAME†
第一引数の文字列を変数名と見なし、第二引数の値を代入します。| 戻値はありません。 LOADLIB†
外部ライブラリをロードします。LoadLibraryして、loadを実行します。 戻値0/1/2=失敗/成功/既にロードしている。 LOG†
自然対数を返します。 LOG10†
常用対数を返します。 LOGGING†
ログファイルへ指定された値を書き込みます。値の型は問いません。簡易配列は各値をカンマで結合して表現されます。 LSO†Last Selection Order. 最後に行われた選択の結果を、位置を表す数値で返します。 request { _i = foo LSO } foo { "earth" "moon" "sun" } _iに"sun"が代入された場合、LSOは2となります。 とにかく択一がされる場合すべてについて動作します。したがって、該当処理が完了した直後に値を取得しないと意味がありません。 request { { "This is a "+ANY("pen", "pencil", "eraser")+"." } res = LSO } ANYの選択結果を得ようとしているならこのコードは誤りです。この位置にあるLSOは{ }の選択結果を取得します。したがってresは常に0です。 以下のように修正することで意図どおり動作するようになります。 request { { "This is a "+ANY("pen", "pencil", "eraser") + "." res = LSO } } 出力確定子がある場合、LSOはすべての取り得る組み合わせに対して動作します。 request { { "1" "2" "3" -- "A" "B" } _i = LSO } たとえば上の関数内の{ }部は以下のいずれかを出力します。 "1A" "2A" "3A" "1B" "2B" "3B" LSOの値の範囲もこれと一致し、0~5を取ります。各値は上の並びと一致します。 MKDIR†
ディレクトリを作成します。フルパス指定可能。相対パスの場合はDLL loadで渡された位置が基準となります。 戻値0/1=失敗/成功。 POW†
第一引数の第二引数乗を返します。 RAND†
乱数を得ます。第一引数で範囲を指定します。0~(第一引数-1)の範囲で発生します。 RE_GETLEN†正規表現系関数の実行結果を取得します。 戻値は汎用配列で、( )にマッチした部分文字列の長さが列挙されています。要素0が正規表現全体にマッチした文字列の長さ、 RE_GETPOS†正規表現系関数の実行結果を取得します。 戻値は汎用配列で、( )にマッチした部分文字列の位置が列挙されています。要素0が正規表現全体にマッチした文字列の位置、 RE_GETSTR†正規表現系関数の実行結果を取得します。
戻値は汎用配列で、( )にマッチした部分文字列が列挙されています。要素0が正規表現全体にマッチした文字列、 RE_GREP†正規表現で文字列を検索し、結果を列挙します。 結果の詳細はRE_GETSTR、RE_GETPOS、RE_GETLENで取得します。 使用可能な正規表現文法については以下をご覧下さい。 boost::Regex++ Regular expression syntax(日本語訳) RE_MATCH†処理対象文字列全体が与えられた正規表現と完全にマッチしたとき1を返します。それ以外では0を返します。 結果の詳細はRE_GETSTR、RE_GETPOS、RE_GETLENで取得します。 RE_REPLACE†正規表現で文字列を検索し、発見された部分をすべて別の文字列へ置換します。 結果の詳細はRE_GETSTR、RE_GETPOS、RE_GETLENで取得します。 RE_REPLACEとRE_SPLITに限り、RE_GETSTR、RE_GETPOS、RE_GETLENの意味が他と異なります。 RE_SEARCH†処理対象文字列内に与えられた正規表現とマッチする箇所があれば1を返します。それ以外では0を返します。 RE_SPLIT†正規表現で文字列を分割します。分割した結果を汎用配列で返します。 結果の詳細はRE_GETSTR、RE_GETPOS、RE_GETLENで取得します。 REPLACE†
文字列を置換します。 第一引数が対象文字列、第二引数が変換前文字列、第三引数が変換後文字列です。該当するすべてが置換されます。 REQUESTLIB†
ロード済の外部ライブラリへrequestによって文字列を送出し、結果を受け取ります。 第一引数はロードした時に指定したライブラリファイル名、第二引数は送出するリクエスト文字列です。 戻値は結果文字列です。 RMDIR†
ディレクトリを削除します。フルパス指定可能。相対パスの場合はDLL loadで渡された位置が基準となります。 ROUND†
実数の小数点以下桁を四捨五入します。 SAVEVAR†変数を保存します。unload時に行なわれる処理と同じものです。 SETDELIM†
変数の標準のデリミタ(簡易配列字の区切り文字)を設定します。デフォルトのデリミタはカンマです。 この関数への引数の与え方には以下の制限があります。注意してください。 _i = (var, "/") SETDELIM(_i) 上の例は変数varのデリミタを"/"へ変更しようとしていますが、これは正常に動きません。 SETDELIM(var, "/") SETLASTERROR†GETLASTERROR関数が返す値を整数で設定します。 SIN†
サインを返します。引数の単位はradianです。 SPLIT†文字列を分割して汎用配列として返します。RE_SPLITで代用可能ですが、正規表現を使わない分だけ高速です。 _array = SPLIT("A//B//C//D//E"," //", 3) _arrayは ("A", "B", "C//D//E") です。 分割数0ですべて分割(省略でも同じ)。1とすると分割しないのでただの文字列代入となります。 SPLITPATH†与えられたパス文字列を要素に分解し、汎用配列として返します。 _i = SPLITPATH("C:\umeici\sample\readme.txt") _i には "C:","\umeici\sample\","readme",".txt" が代入されます。 SQRT†
平方根を返します。 STRFORM†書式化された文字列を返します。C言語のsprintf相当の機能です。 以下はsprintfとの比較です。結果を戻値で得る点と、書式指定のプレフィックス文字が$である点を除けば、まったく同様に使用できます。 // C言語 int year = 1941; char *warname = "太平洋"; sprintf(str, "%04d年 %s戦争勃発。", year, warname); // 文 year = 1941 warname = "太平洋" str = STRFORM("$04d年 $s戦争勃発。", year, warname) 書式指定一つあたりで展開できる文字列の長さは1024文字までに制限されています。 STRLEN†
文字列の文字数を返します。 STRSTR†
文字列内の部分文字列を検索し、見つかった文字位置を返します。 SUBSTR†
文字列から部分文字列を抜き出します。 TAN†
タンジェントを返します。引数の単位はradianです。 TOBINSTR†
整数を2進数値文字列へ変換します。引数が異常の場合は空の文字列を返します。 TOHEXSTR†
整数を16進数値文字列へ変換します。引数が異常の場合は空の文字列を返します。 TOINT†
文字列を整数へ変換します。引数が異常の場合は0を返します。 TOLOWER†
文字列中に含まれる英大文字をすべて小文字へ変換します。 TOREAL†文字列を実数へ変換します。引数が異常の場合は0.0を返します。 TOSTR†
整数、実数、汎用配列を文字列へ変換します。 TOUPPER†
文字列中に含まれる英小文字をすべて大文字へ変換します。 UNLOADLIB†
LOADLIBでロードした外部ライブラリのunloadを実行した後、FreeLibraryします。 |
最終更新日: 2006-12-09 (土) 14:41:29
|