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;
                    }

                }

        

    暂时不支持运算符的优先级和括号。
  • 相关阅读:
    py2exe
    Python库
    Python正则表达式指南
    [Python]日志模块logging的应用
    [Python]python __init__.py
    如何安装配置ulipad
    [Python]如何快速知道要使用哪些python模块和有哪些功能
    CodeIgniter
    Python 绝对简明手册
    理解Python命名机制
  • 原文地址:https://www.cnblogs.com/jetz/p/449299.html
Copyright © 2011-2022 走看看