1

私は正規表現を書くのが初めてなので、助けてください。

このパターンに一致させたい (Java で):

"ABC",010,00,"123",0,"time","time",01,00, 10,    10,88,217," ",," "

取得するデータは常に上記の形式で 16 個の値になります。しかし、その形式は決して変わりません。

これはJava分割でも解析できるため、解析を探していません。これらのデータの大きなチャンクがあるため、最初の 16 データ ポイントをキャプチャし、このパターンと照合して、正しく受信したかどうかを確認します。そうでない場合は無視します。

これまでのところ、私はこの正規表現のみを試しました:

^(\".\"),.,(\".\"),.,(\".\"),(\".\"),.,.,.,.,.,.,(\".\"),.,(\".\")$

私はまだそれを構築している途中です。

特定のプールのパターンと一致する必要があるだけです。最初の 16 データ ポイントを取得し、それがこのパターンに一致するかどうかを確認しようとします。そうでない場合は無視します。

ありがとう!!

4

2 に答える 2

6

これでうまくいくはずです。彼はデータ ポイントがどのような順序で発生するかは気にしないことに注意してください (つまり、すべて文字列またはすべて数値である可能性があります)。

(\s?("[\w\s]*"|\d*)\s?(,|$)){16}

ここで試すことができます。

于 2013-01-04T23:03:59.247 に答える