2007/09/10(月)文字列で書かれた式を解釈したい
HSPでさ "1+1*2" = 3 になったらうれしくね?
つい最近同じことをqofでやったんだわ。
ステージスクリプトを読み込んで計算式とか処理すんの骨折れたっつか、計算機作ってる時間なかったから。
あとは、変数展開をさくっと組み込めばいろいろと楽しいんじゃね?
// ExpressionEvaluator // 式はJavaScript(JScript)の文法に則って書く必要がありますが、文字列式の評価ができます。 #module ExpressionEvaluator #deffunc init@ExpressionEvaluator newcom mssc, "MSScriptControl.ScriptControl" comres ret mssc("Language")="JScript" return #defcfunc Eval str exp _exp = exp mssc->"Eval" _exp return ret #global init@ExpressionEvaluator // おわり mes "1+5*2⇒" + Eval("1+5*2") + "です。" mes "1!=2 ⇒" + Eval("1!=2") + "です。 真:-1 偽:0 に注意かも" mes "1/2 ⇒" + Eval("1/2") + "です。整数型にするにはint()しないと×"