C# 对文本字段中的2个数字求和

C# 对文本字段中的2个数字求和,c#,asp.net,telerik,C#,Asp.net,Telerik,我正在ASP.Net应用程序中使用Telerik控件进行发票录入 我正在寻找在一个数字字段中输入多个金额并将它们相加的能力,就像在Quickbooks中一样 击键: =0.12+3.45制表符或输入 将值添加到3.57并跳到下一个字段 有人有什么想法吗?您需要为in-fix(而不是前缀)表示法构建词法分析器。应该有很多例子——这是一个在很多学位课程中使用的相当标准的概念 至于这样做是否是个好主意(我假设是客户端).您有三个选择: 编写您自己的方法来解析公式(比听起来更复杂,即使您认为它听起来很复

我正在ASP.Net应用程序中使用Telerik控件进行发票录入

我正在寻找在一个数字字段中输入多个金额并将它们相加的能力,就像在Quickbooks中一样

击键:

=0.12+3.45制表符或输入

将值添加到3.57并跳到下一个字段


有人有什么想法吗?

您需要为in-fix(而不是前缀)表示法构建词法分析器。应该有很多例子——这是一个在很多学位课程中使用的相当标准的概念


至于这样做是否是个好主意(我假设是客户端).

您有三个选择:

  • 编写您自己的方法来解析公式(比听起来更复杂,即使您认为它听起来很复杂)
  • 使用预先编写的数学解析器。这是个不错的主意
  • 使用
    eval()

  • 注意:如果您选择选项3,请格外小心,首先进行研究
    eval()
    会让你的应用程序面临各种讨厌的代码注入。

    我不熟悉这里的Telerik控件,但是JS数学解析器在这种情况下可能同样好:代码注入不好,但是eval()路由可以通过首先将文本字符串正则化为只允许的字符来变得更安全。