我从串口读取数据,我想将这些数据拆分成较小的数字 例如:
String inputData = "3032592556231055126395692345723465234578235698"
output : data1 = "30325925562"
data2 = "31055126395"
data3 = "692345723"
data4 = "465234578"
data5 = "235"
data6 = "698"
正是我想要做的事情。
答案 0 :(得分:1)
使用
string part = new string(inputString.Skip(12).Take(12).ToArray());
您可以使用变量或两个
替换12答案 1 :(得分:1)
假设data1
和data2
始终包含11位数,data3
和data4
9位数,依此类推,可能使用System.Text.RegularExpression.Regex
会帮助您实现你想要的(不使用SubString
)
Regex regex = new Regex("(\d{11})(\d{11})(\d{9})(\d{9})(\d{3})(\d{3})");
Match match = regex.Match(inputData);
if (match == Match.Empty)
// Your inputData did not match the Regex, decide what to do here
data1 = match.Groups[1];
data2 = match.Groups[2];
// etc.
我承认,这不是最漂亮的解决方案。