0

次のユースケースがあり、適切なソリューションを探しています。

csv ファイルを読み取り、POJO にデータを入力しています。ファイルの 1 つの列が POJO の複数のフィールドにマップされる可能性があります。

例えば:

Class Test {

private String field1;
private String field2;
private String field3;
......
other fields
---
getter methods
.....
 setter methods 
}

ファイルの XXXX 列の値が 123_TEST_34_THJ だとします。

フィールド 1 の値は 123 フィールド 2 の値は 34 フィールド 3 の値 THJ

Javaコードでこれを行うことができますが、これを動的に分割するソリューションを探しています. XXXX の値が 124_34_THJ に変更されたとしましょう。構成を変更するだけでコードが機能するようにしたいと考えています。より良い解決策は何ですか?質問が明確でない場合はお知らせください。

4

1 に答える 1

1

名前付きキャプチャで正規表現を使用できます。

(?<field1>\d+)_\w+_(?<field2>\d+)_(?<field3>\w+)

それなら来週は…

(?<field2>\d+)_(?<field7>\w+)_(?<field1>\d+)_(?<field3>\w+)

JavaのRegexNamedGroupsでの名前付きキャプチャを使用した正規表現ライブラリの選択に関する詳細情報

于 2012-07-11T07:03:59.437 に答える