解析 简单的字符串计算公式
2013-01-28 17:28
369 查看
只是简单的 加减乘除
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication3 { public class StrCount { public static string StrToCount(string stw) { string st = GetNewstring(stw); string[] strA = st.Split('|'); for (int i = 0; i < strA.Length; i++) { if (strA[i] == "*" || strA[i] == "/") { strA[i + 1] = CountStr(strA[i - 1], strA[i + 1], strA[i]); strA[i - 1] = ""; strA[i] = ""; } } string[] strA1 = GetNewstring(ArtoString(strA)).Split('|'); for (int i = 0; i < strA1.Length; i++) { if (strA1[i] == "+" || strA1[i] == "-") { strA1[i + 1] = CountStr(strA1[i - 1], strA1[i + 1], strA1[i]); strA1[i - 1] = ""; strA1[i] = ""; } } return ArtoString(strA1); } /// <summary> /// 计算字符串 /// </summary> /// <param name="number1"></param> /// <param name="number2"></param> /// <param name="stype"></param> /// <returns></returns> static string CountStr(string number1, string number2, string stype) { decimal d1 = Convert.ToDecimal(number1); decimal d2 = Convert.ToDecimal(number2); string sre = ""; switch (stype) { case "*": sre = (d1 * d2).ToString(); break; case "/": sre = (d1 / d2).ToString(); break; case "+": sre = (d1 + d2).ToString(); break; case "-": sre = (d1 - d2).ToString(); break; } return sre; } /// <summary> /// 数组转成字符串 /// </summary> /// <param name="sA"></param> /// <returns></returns> static string ArtoString(string[] sA) { string strresult = ""; foreach (string item in sA) { if (item.Trim() != "") { strresult += item; } } return strresult; } /// <summary> /// 向字符串中插入“|”并返回新的字符串; /// </summary> /// <param name="st"></param> /// <returns></returns> static string GetNewstring(string st) { //添加"|"以便于分组 if (st.IndexOf('+') != -1) { st = st.Replace("+", "|+|"); } if (st.IndexOf('-') != -1) { st = st.Replace("-", "|-|"); } if (st.IndexOf('*') != -1) { st = st.Replace("*", "|*|"); } if (st.IndexOf('/') != -1) { st = st.Replace("/", "|/|"); } return st; } } }如果有误,敬请指正。。谢谢。。
相关文章推荐
- [转]用Objective-C实现简单的数学字符串公式的计算
- 字符串解析成数学计算公式并计算
- 计算字符串中的简单数学公式
- C#中字符串转换为计算公式,并进行计算的方法(自定义公式的计算)
- 简单字符串表达式计算方法
- php处理字符串格式的计算公式
- C#解析字符串公式
- 简单计算字符串的高度
- Jep解析字符串数学公式
- QPS、PV与机器数量简单计算公式
- php处理字符串格式的计算公式
- 简单的字符串相似度计算
- C# 字符串公式计算 (JScript.Eval 用法)
- .Net实现表达式计算(公式) 表达式字符串
- Redis 源码解析 string内部实现原理之简单动态字符串SDS
- C#中 字符串转换为计算公式
- redis源码解析1-简单动态字符串
- 简单叙述动态公式的工资系统的计算方式
- 简单生成JSON字符串和运用官方版本的JSON简单解析
- 用java解析字符串,如字符串"(1+2/5)*3"当成是数值表达式,进行计算出结果来