<配信日> FOR X01=1 TO 20; IF L%(X01)="=*配信日*" THEN GOTO $配信日; NEXT; GOTO $ERR0; $配信日: LET V01=L%(X01); /* 配信日の行を読込む */ LET X02=INSTR(1,V01,":"); /* 半角コロンの位置をチェック */ IF X02>0 THEN GOTO $年月日; /* 半角コロンがあれば$年月日へ */ LET X02=INSTR(1,V01,":"); /* 全角コロンの位置をチェック */ $年月日: LET V02=RIGHT$(V01,X02+1); /* コロンの右側の文字列を読込む */ $年: LET X03=INSTR(1,V02,"年"); /* '年'の位置をチェック */ LET V03=LEFT$(V02,X03-1); /* 年の左側の文字列 */ LET V03=NUM$(VAL(V03)); /* 前後のスペースを除去 */ $月: LET X04=INSTR(1,V02,"月"); /* '月'の位置をチェック */ LET V04=MID$(V02,X03+1,X04-X03); /* '年'と'月'の間の文字列 */ LET V04=NUM$(VAL(V04)); /* 前後のスペースを除去 */ IF LEN(V04)=1 THEN LET V04="0"+V04; /* もし1桁なら'0'を補う */ $日: LET X05=INSTR(1,V02,"日"); /* '日'の位置をチェック */ LET V05=MID$(V02,X04+1,X05-X04); /* '月'と'日'の間の文字列 */ LET V05=NUM$(VAL(V05)); /* 前後のスペースを除去 */ IF LEN(V05)=1 THEN LET V05="0"+V05; /* もし1桁なら'0'を補う */ LET V06=V03+V04+V05; /* 年月日を合成 */ MESSAGE V06; $END: STOP; $ERR0: MESSAGE "配信日のデータがありません"; GOTO $END; <4ケタ> $コード: ACCEPT "コードは? [数字4桁]",V01; IF ERR(0)=55 THEN GOTO $END; /* [Esc] が押された */ IF V01="" THEN GOTO $コード; /* [Space] が押された */ IF LEN(V01)>4 THEN GOTO $コード; /* 桁数が4ケタより大きい */ IF VAL(V01)=0 THEN GOTO $コード; /* 数値でない */ $4ケタ: IF LEN(V01)=4 THEN GOTO $EXE; /* 丁度4桁なら $EXE へ */ LET V01="0"+V01; GOTO $4ケタ; $EXE: MESSAGE "V01 = "+V01; /*・・・・・・・・ */ $END: STOP;