私はこのような文字列を持っています:
REFORMAT FIELDS=(F1:%[VER#,SAH#]%,%SAH#%,F2:%KMSTAND%)
そして、次の正規表現を使用して、「F1:」から「F2」までのすべての文字を取得しようとしています。
(F1|F2):(.*?)(?:(?=,F))
最初の部分と一致しますが、2番目の部分も取得する必要があります。そのため、先読み機能はオプションでのみ機能します。どうしたの?
編集: 私のコード:
Matcher fields = Pattern.compile("(F1|F2):(.*?)(?:(?=,F))").matcher(line);
while (fields.find()) {
//do something with fields.group(2)
}