c# Winforms -允许在文本框中使用表达式并返回结果

本文关键字:表达式 结果 返回 Winforms 文本 | 更新日期: 2023-09-27 17:49:30

我试图允许用户在文本框中输入单个数字输入或多个表达式,并让我的应用程序计算输出。我相信这是一个相对容易的问题,但我只解决了c#很短的时间-所以请原谅我。

为了更好地解释,在单个文本框中,用户可以输入4或1+1+1+1,在这两种情况下输出都是4。

我正在使用Visual Studio和Winforms。

c# Winforms -允许在文本框中使用表达式并返回结果

可以这样使用表达式求值器http://flee.codeplex.com/

string[] split = Textbox1.Text.Replace(" ","").Split(Convert.ToChar("+"));
double total = 0;
foreach (string str in split)
{
    double tempInt = 0;
    if (double.TryParse(str, out tempInt))
       total += tempInt;
}

System.Diagnostics.Debug.Write(total);

在高层次上,它将简单地为您的输入创建一个解析器,然后处理它。因此,在您的情况下,您可能希望按照优先顺序拆分操作符,然后根据接收到的输入构建操作树。然后,首先从大多数节点的深度解析树。