analyze
Path : sample\analyze
arraynote.hsp
#include "hsp3util.as" s="abc\ndef\nhij\nklm" note2array a,s *main cls syscolor 15:boxf color 0,0,0 pos 8,8:mes "配列変数のセーブ・ロードを行ないます" pos 8,32 objsize 320,24 repeat 4 input a(cnt) loop button "セーブ",*asave button "ロード",*aload button "確認",*aview button
sample\analyze\arraynote.hsp -
getpath.hsp
title "getpath関数のテスト" screen 0,640,320 mes "ファイルを開いて下さい。" dialog "*",16:if stat=0 : end a=refstr mes "すべて取り出す。" mes getpath(a,0) mes "拡張子を除いた部分を取り出す。" mes getpath(a,1) mes "拡張子を取り出す。" mes getpath(a,2) mes "ファイル名のみ取り出す。
sample\analyze\getpath.hsp -
memnote.hsp
メモリノートパッド命令テスト a="abc\ndef\nhij" notesel a noteload "memnote.hsp" mes "行数="+notemax mes "文字数="+notesize repeat notemax noteget b,cnt mes "#"+cnt+":"+b loop noteunsel stop
sample\analyze\memnote.hsp -
note1.hsp
メモリノートパッド命令テスト1 "note1.hsp"にインデックス番号をつけて表示 nmax=0 b="" notesel a noteload "note1.hsp" idx=0 repeat notemax noteget b,idx print "index"+idx+"="+b idx++ loop stop
sample\analyze\note1.hsp -
note2.hsp
メモリノートパッド命令テスト2 選んだファイルをメッセージボックスに表示。
sample\analyze\note2.hsp -
noteadd.hsp
title "テキストファイル作成" screen 0,320,240 cls 1 mes "指定範囲の数をテキストファイルに出力" objmode 1 pos 0,40:input p_start pos 80,40:mes "to" pos 110,40:input p_end pos 0,80:button "作成",*go stop *go buf="#NUM FILE" notesel buf i = p_end-p_start+1:if i<0 : end repeat i
sample\analyze\noteadd.hsp -
notefind.hsp
複数行文字列の検索 (HSP3.5からnotefind命令が標準命令として追加されました) sdim st,1000 st={"peach apple orange banana kiwi grape"} pos 0,0 mes st findstr="apple" notesel st pos 320,0 findstr="apple" i=notefind( findstr, notefind_match ) mes
sample\analyze\notefind.hsp -
sortnote.hsp
文字列のソート (HSP3.5からソートが標準命令になりました) sdim st,1000 st={"peach apple orange banana kiwi grape"} pos 0,0 mes st sortnote st,0 pos 320,0 mes st stop
sample\analyze\sortnote.hsp -
sortstr.hsp
配列変数のソート (HSP3.5からソートが標準命令になりました) randomize kaz=10 sdim n,32,kaz repeat kaz n.cnt=" "+rnd(20) loop pos 0,0 repeat kaz mes "N["+cnt+"]="+n.cnt loop sortstr n,0 pos 320,0 repeat kaz sortget a,cnt mes "sort N["+cnt+"]="+n.cnt+"("+a+")" loop stop
sample\analyze\sortstr.hsp -
sortval.hsp
配列変数のソート (HSP3.5からソートが標準命令になりました) kaz=20 dim n,kaz pos 0,0 repeat kaz n.cnt = rnd(100) mes "N["+cnt+"]="+n.cnt loop sortval n,0 pos 320,0 repeat kaz sortget a,cnt mes "sort N["+cnt+"]="+n.cnt+"("+a+")" loop stop
sample\analyze\sortval.hsp -
split.hsp
split命令サンプル buf = "tarou,18,male" mes "もとの文字列["+buf+"]" split buf, ",", name, age, sex mes "名前:"+name mes "年齢:"+age+"才" mes "性別:"+sex mes " " buf = "よそはよそ、うちはうち。そよそよ。ご飯をよそいなさい。
sample\analyze\split.hsp -
str.hsp
10進数<->16進数変換サンプル a=0 b="" pos 0,0:input a pos 0,30:input b pos 70,2:mes "10進数" pos 70,32:mes "16進数" pos 0,60 objsize 200,24 button "10進->16進変換",*in10 button "16進->10進変換",*in16 button "終了",*owari stop *in10 n=strf("%x",a) objprm 1,n stop *in16
sample\analyze\str.hsp -
strf.hsp
書式指定付き文字列変換(strf)テスト a=123 mes strf("10進[%d]",a) mes strf("16進[%x]",a) mes strf("10進桁数指定付き[%05d]",a) mes strf("16進桁数指定付き[%05x]",a) a=sqrt(2) mes strf("10進実数[%f]",a) mes strf("10進実数桁数指定付き[%3.10f]",a) stop
sample\analyze\strf.hsp -
strmid.hsp
i=" -" mes i a="ABCDEFG" mes "もとの文字列="+a b=strmid(a,0,3) mes "左から3文字を取り出す="+b b=strmid(a,-1,3) mes "右から3文字を取り出す="+b b=strmid(a,2,3) mes "2文字目から3文字を取り出す="+b mes i c=instr(a,0,"FG") mes "文字列「FG」のある場所="+c c=instr(a,0,"AB") mes "文字列「AB」のある場所="+c
sample\analyze\strmid.hsp -
strtrim.hsp
strtrimサンプル s=" A B C D E F " mes " -空白(半角スペース)の処理 " mes "もとの文字列["+s+"]" mes "両端のスペースを削除["+strtrim(s)+"]" mes "左端のスペースを削除["+strtrim(s,1)+"]" mes "右端のスペースを削除["+strtrim(s,2)+"]" mes "すべてのスペースを削除["+strtrim(s,3)+"]" s=" こんにちは 全角文字です " zenspace=" "
sample\analyze\strtrim.hsp -