zoukankan      html  css  js  c++  java
  • 用正则表达式完成简单公式的替换计算

                //用正则表达式完成替换计算
                
    //检验
                if(Common.GetMatchStr(this.sumitem,@"\w+([+\-*/]\w+)*").Length!=sumitem.Length)
                    
    return -1

                
    string op=Common.GetMatchStr(sumitem,@"^\w+");
                
    double ret=Cvt(op);

                
    while(op.Length !=sumitem.Length )    //
                {
                    
    string oper=sumitem.Substring(op.Length,1);
                    sumitem
    =sumitem.Substring(op.Length+1);
                    op
    =Common.GetMatchStr(sumitem,@"^\w+");
                    
    double opval=Cvt(op);

                    
    switch(oper)
                    
    {
                        
    case "+":
                            ret
    +=opval;
                            
    break;
                        
    case "-":
                            ret
    -=opval;
                            
    break;
                        
    case "*":
                            ret
    *=opval;
                            
    break;
                        
    case "/":
                            ret
    /=opval;
                            
    break;
                    }

                }

        

    暂时不支持运算符的优先级和括号。
  • 相关阅读:
    android模拟器上网设置
    20150916自动化测试之Appinum For Android(环境搭建之下载更新安装AndroidSDK包)
    测试部门目标
    grade 错误
    质量保证
    emma覆盖率
    python学习(二)--数据类型
    python学习(一)--python解释器
    fidder从基础到熟练
    这几天帮一个朋友解决了一点小问题(RF的有些小问题及解决过程)
  • 原文地址:https://www.cnblogs.com/jetz/p/449299.html
Copyright © 2011-2022 走看看