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

                }

        

    暂时不支持运算符的优先级和括号。
  • 相关阅读:
    海量前端后台Java源码模板下载
    【项目源码】基于Spring + Spring MVC + MyBatis的图书馆管理系统
    mysql关键字匹配度模糊查询
    Linux下导入MySQL数据库
    MySQL允许远程登录的授权方法
    MySQL之alter语句用法总结
    Linux下MySQL定时备份数据库
    Linux下MySQL备份指定数据库命令
    ZooKeeper核心概念和架构
    MapReduce核心概念及架构
  • 原文地址:https://www.cnblogs.com/jetz/p/449299.html
Copyright © 2011-2022 走看看