首页/技术开发/内容

.Net下的算术表达式解析器的完成思路与源码

技术开发2024-06-03 阅读()
strExpression.IndexOf("/")!=-1)
{
strExpression=CalculateExpress(strExpression).ToString();
}
return strExpression;
}

private string GetExpType(string strExpression)
{
strExpression=strExpression.ToUpper();
if (strExpression.IndexOf("SIN")!=-1)
{
return CalculateExExpress(strExpression.Substring(strExpression.IndexOf("N")+1,strExpression.Length-1-strExpression.IndexOf("N")),EnumExpress.Sin).ToString();
}
if (strExpression.IndexOf("COS")!=-1)
{
return CalculateExExpress(strExpression.Substring(strExpression.IndexOf("S")+1,strExpression.Length-1-strExpression.IndexOf("S")),EnumExpress.Cos).ToString();
}
if (strExpression.IndexOf("TAN")!=-1)
{
return CalculateExExpress(strExpression.Substring(strExpression.IndexOf("N")+1,strExpression.Length-1-strExpression.IndexOf("N")),EnumExpress.Tan).ToString();
}
if (strExpression.IndexOf("ATAN")!=-1)
{
return CalculateExExpress(strExpression.Substring(strExpression.IndexOf("N")+1,strExpression.Length-1-strExpression.IndexOf("N")),EnumExpress.ATan).ToString();
}
if (strExpression.IndexOf("SQRT")!=-1)
{
return CalculateExExpress(strExpression.Substring(strExpression.IndexOf("T")+1,strExpression.Length-1-strExpression.IndexOf("T")),EnumExpress.Sqrt).ToString();
}
if (strExpression.IndexOf("POW")!=-1)
{
return CalculateExExpress(strExpression.Substring(strExpression.IndexOf("W")+1,strExpression.Length-1-strExpression.IndexOf("W")),EnumExpress.Pow).ToString();
}
return strExpression;
}
}
}



第1页  第2页  第3页  第4页  第5页  第6页  第7页  第8页  第9页  第10页  第11页  第12页  第13页 

……

相关阅读