如何判断算术表达式是否合法? 如“基本工资-扣款+(pi)”,请问怎样判断其是否合法? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 比较难,毕竟Delphi不是解释语言啊,好好学编译原理吧! 请问如何判断一个算术表达式是否合法,如:A+B*C包括加减乘除和括号等运算符谢谢!! 象这样123*456+56(89+45)-56/1+46213完全可以在DELPHI中实现的,它可以用栈,可以用指针,也可以用二叉树你可以看看数据结构就可以了很简单的, 不用这么麻烦吧,什么数据结构的,写得不好还容易出错,又花时间,学一招吧query1.close;query1.Sql.text := 'select 基本工资-扣款+(pi) from 你的表';try query1.Open;except showmessage('不合法');end;showmessage('合法');如果是SQL serverquery1.close;query1.Sql.text := 'select 123*456+56(89+45)-56/1+46213';try query1.Open;except showmessage('不合法');end;showmessage('合法');如果是Oraclequery1.close;query1.Sql.text := 'select 123*456+56(89+45)-56/1+46213 from dual';try query1.Open;except showmessage('不合法');end;showmessage('合法'); 关于OleVariant内存管理问题? 请教编译成DLL后控件HINT丢失 PopupMenu问题 adotable 连接文本文件问题 Delphi 5升级到Delphi 2010的问题 EOLESysError:应用程序调用一个已为另一线程整理的界面. 摆脱大家给推荐几本delphi学习书 用ADSL上网的电脑能否用作数据服务器? 急急:怎样编写一个能够自动进行网络更新的程序。 在重写TDBMemo控件时应如何写onexit过程 怎样把 FindDialog 的查找选项 赋给 RxRichEdit.FindText的查找选项 关于循环播放背景音乐死机的问题
包括加减乘除和括号等运算符
谢谢!!
完全可以在DELPHI中实现的,
它可以用栈,可以用指针,也可以用二叉树
你可以看看数据结构就可以了很简单的,
query1.close;
query1.Sql.text := 'select 基本工资-扣款+(pi) from 你的表';
try
query1.Open;
except
showmessage('不合法');
end;
showmessage('合法');如果是SQL server
query1.close;
query1.Sql.text := 'select 123*456+56(89+45)-56/1+46213';
try
query1.Open;
except
showmessage('不合法');
end;
showmessage('合法');如果是Oracle
query1.close;
query1.Sql.text := 'select 123*456+56(89+45)-56/1+46213 from dual';
try
query1.Open;
except
showmessage('不合法');
end;
showmessage('合法');