拆分String然后解析为十进制

时间:2016-06-25 01:29:11

标签: string split numbers decimal

我有以下文字:

list2

在字符串变量

然后我将其拆分并尝试解析十进制数字,这是我的代码:

   3.024         2.184        5.0000

现在,当我进行解析时,我收到此错误:

  

输入字符串的格式不正确。

为什么会发生这种情况?

3 个答案:

答案 0 :(得分:2)

不确定您使用的语言是什么,是否支持正则表达式拆分?

linea.Split('\s+');

<强>更新

因为学习它是C#,我只需添加add'l info

string[] test = Regex.Split(linea, @"\s+");

https://msdn.microsoft.com/en-us/library/8yttk7sy(v=vs.110).aspx

答案 1 :(得分:1)

带领@ neouser99和评论,我想出了这个

string linea;
linea = "       3.024         2.184        5.0000";
string[] test = Regex.Replace(linea.Trim(), @"\s+", ",").Split(',');
Decimal[] numbers = Array.ConvertAll(test, decimal.Parse);

答案 2 :(得分:0)

添加一个空的捕获&#34; &#34;值,在你去解析时跳过它们。虽然,最好是消除它们,在这种情况下(假设它不是值之间的固定数量的空格)用递归的空格替换每个双空格,直到&#39; linea&#中没有双空格39;