-3

シリアルポートからデータを読み取り、このデータをより小さな数字に分割したい例:

        String  inputData = "3032592556231055126395692345723465234578235698"

        output : data1 = "30325925562"
                 data2 = "31055126395"
                 data3 = "692345723"
                 data4 = "465234578"
                 data5 = "235"
                 data6 = "698"

それはまさに私がやりたいことです。

4

2 に答える 2

1

data1anddata2が常に 11 桁、9 桁などを保持data3するdata4と仮定すると、 a を使用すると、( を使用せずに)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.

認めますが、これは最善の解決策ではありません。

于 2013-03-14T21:44:42.427 に答える
1

使用する

string part = new string(inputString.Skip(12).Take(12).ToArray());

12 を 1 つまたは 2 つの変数に置き換えることができます

于 2013-03-14T21:32:52.967 に答える