文字だったら、候補を列挙した文字列からinstrで検索して、結果が 0 以上なら真。
なーんてのを使っています。
a="t"
b="qwerty"
if (instr(b,0,a)>=0){
mes "変数a は q,w,e,r,t,yのどれかです."
}else{
mes "変数a は q,w,e,r,t,yのどれでもないです."
}
文字列の場合はちょい面倒ですが、候補に出てこない記号を付加してやればなんとかできます。
a="abc"
b=",abc,def,ghi,"
if (instr(b,0,","+a+",")>=0){
mes "変数a は abc,def,ghiのどれかです."
}else{
mes "変数a は abc,def,ghiのどれでもないです."
}
最初のはこんな感じに応用できます。
a="a"
b="aiueo"
m(0)="「あ」です"
m(1)="「い」ですね"
m(2)="へんじ が ない. ただの「う」のようだ"
m(3)="「え」かしら。"
m(4)="「お」のことか-------!!!!"
idx=instr(b,0,a)
if (idx>=0){
mes a+" は "+m(idx)
}else{
mes a+" は ローマ字の母音ではないです。"
}
どれも、候補が多いほど、条件式を列挙したりrepeat命令でループするより速くなるんじゃないかなー と思います。