int index1550 = dataIndexOf1550; int index1310 = dataIndexOf1310; int index980 = dataIndexOf0980; int index1610 = dataIndexOf1610; if index1550 = 0 int index = index1550 - 1;
public Tuple<string, double> ParseData(string data) { string[] units = { "1550", "1310", "0980", "1610" }; foreach (string unit in units) { int index = data.IndexOf(unit); if (index >= 0) { int start = index - 1; while (start >= 0 && data[start] >= '0' && data[start] <= '9') { start--; } start++;
int end = index + unit.Length;
while (end < data.Length && data[end] >= '0' && data[end] <= '9')
{
end++;
}
if (double.TryParse(data.Substring(start, end - start), out double value))
{
return Tuple.Create(unit, value);
}
}
}
return null;
}
// Usage: Tuple<string, double> result = ParseData("Some data with 1550 value"); if (result != null) { string unit = result.Item1; double value = result.Item2; // Do something with unit and value }
原文地址: https://www.cveoy.top/t/topic/ber9 著作权归作者所有。请勿转载和采集!