现有字符串str='((a=1 and b=1) or c=1) and d=1'. a,b,c,d为变量,在这里不用管如何给a,b,c,d取值。str为比较法则。怎么处理str,得到一个true or false.主要就是怎么把str给分开处理?我主要是不知道刮号怎么弄?

解决方案 »

  1.   

    str不是固定的。可以简单,也可以是很复杂的。
      

  2.   

    str为比较法则。怎么处理str,得到一个true or false.主要就是怎么把str给分开处理?我主要是不知道刮号怎么弄?
    ------------------
    不大明白,“str为比较法则”是什么意思,
    “怎么处理str,得到一个true or false”是哪个得到True或False你要做表达式求值吗
      

  3.   

    ((a=1 and b=1) or c=1) and d=1 是一个表达式。a,b,c,d是变量。不过((a=1 and b=1) or c=1) and d=1现在作为字符串法保存在str中。怎么处理str来得到((a=1 and b=1) or c=1) and d=1 最后true or false.就是怎么分解str
      

  4.   

    我很明白楼主的意思,楼主是不是学过VFP,很喜欢那个宏替换功能是吧,呵呵,Delphi里不行啊,那个功能的确是好呀,直接就可以Flag=&Str,耍得到想要的结果,是很安逸,可惜Delphi里没,你可以这样吧:一个一个字符取出来进行判断,如果某几个字符相加等于(not,and,or...)则对应到相应的逻辑运算,当然是麻烦了点
      

  5.   

    还是觉得用select str bijiao hao .