C# - 输入字符串的格式不正确

use*_*717 5 c#

我正在开发一个简单的 Windows 窗体应用程序,用户输入带有分隔符的字符串,我解析该字符串并仅从字符串中获取变量。例如,如果用户输入:

2X + 5Y + z^3
Run Code Online (Sandbox Code Playgroud)

我从“方程”中提取值 2,5 和 3,然后将它们简单地相加。

这就是我从字符串中获取整数值的方法。

int thirdValue
string temp;
temp = Regex.Match(variables[3], @"\d+").Value
thirdValue = int.Parse(temp);
Run Code Online (Sandbox Code Playgroud)

variables只是一个字符串数组,我用来在解析后存储字符串。

但是,当我运行该应用程序时,出现以下错误:

输入字符串的格式不正确

小智 0

您可以将字符串更改为字符数组并检查它是否为数字并对它们进行计数。

        string temp = textBox1.Text;
        char[] arra = temp.ToCharArray();
        int total = 0;
        foreach (char t in arra)
        {
            if (char.IsDigit(t))
            {
                total += int.Parse(t + "");
            }
        }
        textBox1.Text = total.ToString();
Run Code Online (Sandbox Code Playgroud)