ATOI

使い方:   #n = dllfunc("ATOI",$s1);
説明: 数値の文字列表現 $s1 を数値に変換します。
引数:
$s1 : 数値の文字列表現
文字列の先頭が "0x" (または "0X") で始まる場合は16進数、
"0b" または "0B" で始まる場合は2進数、
そうでなく先頭が "0" で始まる場合は8進数、
それ以外の場合は10進数とみなして変換します。
返り値: 数値
例:
#n = dllfunc("ATOI","0xC");    //  #n == 12  (16進数)
#n = dllfunc("ATOI","0b1100"); //  #n == 12  (2進数)
#n = dllfunc("ATOI","014");    //  #n == 12  (8進数)
#n = dllfunc("ATOI","12");     //  #n == 12  (10進数)


ITOA

使い方:   $s = dllfuncstr("ITOA",#n1,#n2);
説明: 整数 #n1 の #n2 進数表現を返します。
引数:
#n1 : 数値
#n2 : 基数(2 は2進数, 8 は8進数, 16 は16進数、 それ以外は10進数になります)
返り値: --- (8進数の先頭の "0"、16進数の先頭の "0x" は付加されません)
例:
$s = dllfuncstr("ITOA",12,2);  //  $s == "1100" (2進数)
$s = dllfuncstr("ITOA",12,8);  //  $s == "14"   (8進数)
$s = dllfuncstr("ITOA",12,16); //  $s == "c"    (16進数)
$s = dllfuncstr("ITOA",12,0);  //  $s == "12"   (10進数)


STRICMP

使い方:   #n = dllfunc("STRICMP",$s1,$s2);
説明: 半角アルファベットの大小を無視して2つの文字列を比較します。
引数:
$s1 : 文字列1
$s2 : 文字列2
返り値: 2つの文字列が一致していれば 0 を返します。 異なっている場合は正または負の整数を返します。
例:
#r = dllfunc("STRICMP","ABC","Abc");    //  #r == 0
#r = dllfunc("STRICMP","ABC","abc");  //  #r != 0 (全角文字のため)


STRCOUNT

使い方:   #n = dllfunc("STRCOUNT",$s1,$s2);
説明: 文字列中の部分文字列の個数を返します。
引数:
$s1 : 検索対象文字列
$s2 : 部分文字列
返り値: 見つかった部分文字列の個数を返します。
例:
$str = hidemarudir;
message $str + " 中の円記号の個数は " + 
        str(dllfunc("STRCOUNT",$str,"\\")) + " 個です";
$str = "AAAAA";
message $str + " 中の AA の個数は " + 
        str(dllfunc("STRCOUNT",$str,"AA")) + " 個です"; // 2 個になります


GSUB

使い方:   $s = dllfuncstr("GSUB",$s1,$s2,$s3,#n4);
説明: 文字列中の部分文字列を別の文字列に置換します。
引数:
$s1 : 置換対象文字列
$s2 : 検索文字列
$s3 : 置換文字列
#n4 : 最初から何個の文字列を置換するか
(-1 を指定すると見つかったものを全て置換します)
返り値: 置換された結果の文字列が返ります。
例:
$str = "C:\\usr\\home\\sugiura\\public_html\\index.html";
message "DOS  name: " + $str + "\n" + 
        "UNIX name: " + dllfuncstr("GSUB",$str,"\\","/",-1);


GETTOKEN

使い方:   $s = dllfuncstr("GETTOKEN",$s1,$s2);
説明: 文字列から指定文字を区切り子として分割し、分割された文字列を返します。
引数:
$s1 : 対象文字列
$s2 : 区切り文字 (複数指定可)
返り値: 最初の呼出しで先頭の文字列が返ります。 2回目以降の呼出しで $s1 を "" とすると 次々に文字列を返します。
なお、取り出せる文字列がまだ残っているかどうかは HASMORETOKENS 関数で調べて下さい。
例:
//  円記号、コロン、ピリオドを区切りとして文字列を分割
$token = dllfuncstr("GETTOKEN","C:\\dir\\foo.txt","\\:.");
while (1) {
    //  "C", "", "dir", "foo", "txt" の順に表示される
    message "取り出された文字列は " + $token + " です。";
    //  まだ文字列があるかどうか確認
    if (dllfunc("HASMORETOKENS") == 0) break;
    //  次の文字列を取り出す
    $token = dllfuncstr("GETTOKEN","","\\:.");
}


HASMORETOKENS

使い方:   #n = dllfunc("HASMORETOKENS");
説明: GETTOKEN 関数 の実行中に まだ取り出せる文字列が残っているかどうかを調べます。
引数: (なし)
返り値: まだ取り出せる文字列が残っていれば0でない値を、 もう取り出す文字列がない場合は0を返します。
例: (GETTOKEN 関数 の例を参照して下さい)


LTRIM

使い方:   $s = dllfuncstr("LTRIM",$s1);
説明: 文字列の左端にある空白文字(半角スペース、タブ等)を取り除きます。
引数:
$s1 : 対象文字列
返り値: 空白を除いた残りの文字列を返します。
例: (省略)


RTRIM

使い方:   $s = dllfuncstr("RTRIM",$s1);
説明: 文字列の右端にある空白文字(半角スペース、タブ等)を取り除きます。
引数:
$s1 : 対象文字列
返り値: 空白を除いた残りの文字列を返します。
例: (省略)


STRLEN/STRLEN2

使い方:   #n = dllfunc("STRLEN",$s1);
説明: 文字列の長さを返します。
引数:
$s1 : 対象文字列
返り値: 文字列の長さを返します。 STRLEN は全角文字を2文字と数えた長さを返しますが、 STRLEN2 は全角文字も1文字と数えた長さを返します。
例:
#len = dllfunc("STRLEN","こんにちは"); // #len == 10
#len = dllfunc("STRLEN2","こんにちは"); // #len == 5


STRSTR/STRSTR2

使い方:   #n = dllfunc("STRSTR",$s1,$s2);
説明: 文字列中の先頭から部分文字列を検索し、 最初に見つかった位置を返します。
引数:
$s1 : 対象文字列
$s2 : 検索文字列
返り値: 見つかった場合はその位置を返します。 先頭が 0 です。見つからなかった場合は -1 を返します。 STRSTR は全角文字を2文字と数えますが、 STRSTR2 は全角文字も1文字と数えます。
例:
#s = dllfunc("STRSTR","こんばんは","ん"); // #s == 2
#s = dllfunc("STRSTR2","こんばんは","ん"); // #s == 1


STRRSTR/STRRSTR2

使い方:   #n = dllfunc("STRRSTR",$s1,$s2);
説明: 文字列中の最後から部分文字列を検索し、 最初に見つかった位置を返します。
引数:
$s1 : 対象文字列
$s2 : 検索文字列
返り値: 見つかった場合はその位置を返します。 先頭が 0 です。見つからなかった場合は -1 を返します。 STRRSTR は全角文字を2文字と数えますが、 STRRSTR2 は全角文字も1文字と数えます。
例:
#s = dllfunc("STRRSTR","こんばんは","ん"); // #s == 6
#s = dllfunc("STRRSTR2","こんばんは","ん"); // #s == 3


LEFTSTR/LEFTSTR2

使い方:   $s = dllfuncstr("LEFTSTR",$s1,#n2);
説明: 文字列の左端から指定文字分を抜き出します。
引数:
$s1 : 対象文字列
#n2 : 抜き出す文字数
返り値: 抜き出した文字列を返します。 $s1 の長さが #n2 より短い場合は $s1 が そのまま返されます。 LEFTSTR は全角文字を2文字と数えますが、 LEFTSTR2 は全角文字も1文字と数えます。
例:
$s = dllfuncstr("LEFTSTR","こんばんは",4); // $s == "こん"
$s = dllfuncstr("LEFTSTR2","こんばんは",4); // $s == "こんばん"


RIGHTSTR/RIGHTSTR2

使い方:   $s = dllfuncstr("RIGHTSTR",$s1,#n2);
説明: 文字列の右端から指定文字分を抜き出します。
引数:
$s1 : 対象文字列
#n2 : 抜き出す文字数
返り値: 抜き出した文字列を返します。 $s1 の長さが #n2 より短い場合は $s1 が そのまま返されます。 RIGHTSTR は全角文字を2文字と数えますが、 RIGHTSTR2 は全角文字も1文字と数えます。
例:
$s = dllfuncstr("RIGHTSTR","こんばんは",4); // $s == "んは"
$s = dllfuncstr("RIGHTSTR2","こんばんは",4); // $s == "んばんは"


MIDSTR/MIDSTR2

使い方:   $s = dllfuncstr("MIDSTR",$s1,#n2,#n3);
説明: 文字列の途中から指定文字数分の文字列を抜き出します。
引数:
$s1 : 対象文字列
#n2 : 抜き出す文字列の先頭の位置
#n3 : 抜き出す文字数
返り値: 抜き出された文字列を返します。 #n2 が 0 の時は dllfuncstr("LEFTSTR",$s1,#n3) と同じ結果になります。 MIDSTR は全角文字を2文字と数えますが、 MIDSTR2 は全角文字も1文字と数えます。
例:
$s = dllfuncstr("MIDSTR","こんにちは",2,2); // $s == "ん"
$s = dllfuncstr("MIDSTR2","こんにちは",2,2); // $s == "にち"


TOLOWER/TOLOWER2

使い方:   $s = dllfuncstr("TOLOWER",$s1);
説明: 指定文字列中のアルファベットの大文字を 全て小文字に変換したものを返します。
引数:
$s1 : 対象文字列
返り値: 変換された文字列が返ります。 TOLOWER は半角アルファベットのみを変換しますが、 TOLOWER2 は全角アルファベットも変換します。
例:
$s = dllfuncstr("TOLOWER","ABCDEF"); // $s == "abcDEF"
$s = dllfuncstr("TOLOWER2","ABCDEF"); // $s == "abcdef"


TOUPPER/TOUPPER2

使い方:   $s = dllfuncstr("TOUPPER",$s1);
説明: 指定文字列中のアルファベットの小文字を 全て大文字に変換したものを返します。
引数:
$s1 : 対象文字列
返り値: 変換された文字列が返ります。 TOUPPER は半角アルファベットのみを変換しますが、 TOUPPER2 は全角アルファベットも変換します。
例:
$s = dllfuncstr("TOUPPER","abcdef"); // $s == "ABCdef"
$s = dllfuncstr("TOUPPER2","abcdef"); // $s == "ABCDEF"


REVERSE/REVERSE2

使い方:   $s = dllfuncstr("REVERSE",$s1);
説明: 指定文字列の文字の並びを反転したものを返します。
引数:
$s1 : 対象文字列
返り値: 変換された文字列が返ります。 REVERSE は2バイト文字を意識せずに反転しますが、 REVERSE2 は2バイト文字を意識して反転します。
例:
$s = dllfuncstr("REVERSE","abcde");  // $s == "edcba"
// "AB" == "\x82\x60\x82\x61"
$s = dllfuncstr("REVERSE","AB"); // $s == "x61x82x60x82"
$s = dllfuncstr("REVERSE2","AB"); // $s == "BA"


TOHANKAKU

使い方:   $s = dllfuncstr("TOHANKAKU",$s1);
説明: 全角文字を半角に変換します。
引数:
$s1 : 対象文字列
返り値: 変換された文字列が返ります。
例:
$s = dllfuncstr("TOHANKAKU","Aあ%"); // $s == "Aア%"


TOZENKAKUHIRA

使い方:   $s = dllfuncstr("TOZENKAKUHIRA",$s1);
説明: 半角文字を全角ひらがなに変換します。
引数:
$s1 : 対象文字列
返り値: 変換された文字列が返ります。
例:
$s = dllfuncstr("TOZENKAKUHIRA","Aア%"); // $s == "Aあ%"


TOZENKAKUKATA

使い方:   $s = dllfuncstr("TOZENKAKUKATA",$s1);
説明: 半角文字を全角カタカナに変換します。
引数:
$s1 : 対象文字列
返り値: 変換された文字列が返ります。
例:
$s = dllfuncstr("TOZENKAKUHIRA","Aア%"); // $s == "Aア%"