ここ何ヶ月か特殊文字を変換するモジュールを書いていたのですが
特殊文字のみを変換するより
全部変換してしまった方がシンプルなのでは?と考え
コーディングしてみるとシンプルに記述できました
FILE名:FILE_str2ints_ints2str.hsp
TESTコード
注:このモジュールのTESTには
FILE_int2char_char2int_02.hsp
が必要です
特殊文字のみを変換するより
全部変換してしまった方がシンプルなのでは?と考え
コーディングしてみるとシンプルに記述できました
FILE名:FILE_str2ints_ints2str.hsp
#module str2ints_ints2str // 文字列を数値群に変換する #deffunc str2ints var r,var p // 引数の説明 // r:返り値用文字列 // p:変換したい文字列 r="" l=strlen(p) // 文字列の長さだけ繰り返す repeat l // 一文字抜き出す of_peek=peek(p,cnt) // 抜き出した文字列を文字列に変換して返り値文字列に加算 r+=some_at_int2char_02(of_peek) loop return // 数値群を文字列に変換する #deffunc ints2str var r,var p // 引数の説明 // r:返り値用文字列 // p:変換したい数値群 r="" l=strlen(p) l/=2 // 文字列の長さ/2繰り返す repeat l n=cnt*2 // 2文字抜き出す u=strmid(p,n,2) // 抜き出した文字を変換して返り値文字列に加算 r+=some_at_char2int_02(u) loop return #global |
#include "FILE_int2char_char2int_02.hsp #include "FILE_str2ints_ints2str.hsp s="abソc\tdef\\ghi\"jkl :;&{}#?'opq" ss="" sss="" str2ints ss,s ints2str sss,ss mes s mes ss mes sss s="abソc\tdef\\ghi\"jkl :;&{}#?'opq\nxyz" ss="" sss="" str2ints ss,s ints2str sss,ss mes s mes ss mes sss s="abソc\tdef\\ghi" ss="" sss="" str2ints ss,s ints2str sss,ss mes s mes ss mes sss |
注:このモジュールのTESTには
FILE_int2char_char2int_02.hsp
が必要です