我有以下文字:
list2
在字符串变量
中然后我将其拆分并尝试解析十进制数字,这是我的代码:
3.024 2.184 5.0000
现在,当我进行解析时,我收到此错误:
输入字符串的格式不正确。
为什么会发生这种情况?
答案 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;