[英]Parse multiple doubles from string in C#
我有一個包含已知數量的double值的字符串。 解析字符串並將結果插入匹配的標量變量的最簡潔方法(通過C#)是什么? 基本上,我想做相當於這個sscanf
語句,但在C#中:
sscanf( textBuff, "%lg %lg %lg %lg %lg %lg", &X, &Y, &Z, &I, &J, &K );
...假設“ textBuff
”可能包含以下內容:
"-1.123 4.234 34.12 126.4 99 22"
......並且每個值之間的空格字符數可能會有所不同。
謝謝你的任何指示。
string textBuff = "-1.123 4.234 34.12 126.4 99 22";
double[] result = textBuff
.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
.Select(s => double.Parse(s))
.ToArray();
double x = result[0];
// ...
double k = result[5];
要么
string textBuff = "-1.123 4.234 34.12 126.4 99 22";
string[] result = textBuff
.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
double x = double.Parse(result[0]);
// ...
double k = double.Parse(result[5]);
您可以使用String.Split('',StringSplitOptions.RemoveEmptyEntries)將其拆分為“單個值”。 然后它是一個直的Double.Parse(或TryParse)
foreach( Match m in Regex.Matches(inputString, @"[-+]?\d+(?:\.\d+)?") )
DoSomething(m.Value);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.