C#第一个特殊字符

本文关键字:特殊字符 第一个 | 更新日期: 2023-09-27 18:22:19

我想写一个计算器只是为了好玩,第一点很容易。让它进行计算,即使有更多相同类型的计算,例如10+10+10当我试图找出如何用不同的计算方法处理长字符串时,我的问题就来了。。

Ex10+15-5和10-15+5给出了非常不同的结果。但目前我无法存档,因为我的代码不支持同一字符串中的不同计算方法,所以我需要一种方法来查看字符串中发布了哪些计算方法。

我在字符串上使用.split('-','+'),但这让我陷入了一个问题,我无法查找第一个拆分字符串的字符是什么,所以我不知道该调用什么方法。。

我认为最后的事情会是这样的。

If(stringSplitChar == +)
{
     int tempRes;
     tempRes = Convert.ToInt32(SplitVal[0]);
     for (i = 1; i < SplitVal.Count(); i++)
     {
         tempRes = addVal(tempRes, Convert.ToInt32(SplitVal[i]));
     }
     endRes = tempRes.ToString(););
}
endRes = temp;
return endRes;

C#第一个特殊字符

您应该学习解析、语法树。。。

您可以查看现有的项目来了解它是如何工作的。例如ncalc。

公平地说,你需要单独获得编号,如果你想在没有。。。

      using System;
      using System.Data;
      class Program {
      static void Main(string[] args) {
      string s ="10+20+30"
      var dt = new DataTable();
      var result = dt.Compute(s, null);
       }
      }