繰り返しグループを 1 行でキャプチャできるようにしたい。以下に示すように、私は自分の仕事をしました。
(((?:\s*^>\s*[0-9]+\s*,\s*[0-9]+\s*,\s*[a-zA-Z]+\s*(,\s*[a-zA-Z]+\s*)*;$\s*)|(?:\s*^>\s*[0-9]+\s*,\s*[0-9]+\s*,\s*[a-zA-Z]+\s*,\s*[0-9]+\s*(,\s*[\-]?[0-9]+\s*)*;$\s*))+)
それはキャプチャ> 9, 2, door, open;
し、> 3, 3, door,1, 1;
個別に罰金を科します。でも、私も撮りたい> 9, 2, door, close; > 1, 9, door, close; > 3, 3, door, 1, 1;
。最後に + 量指定子を使用して括弧を使用してグループを囲みましたが、繰り返しパターンを正しくキャプチャしません。どこが間違っていたのか教えていただけますか?
編集済み
次のように、正規表現をやや短くしました。
(((\s*>\s*\d+\s*,\s*\d+\s*,\s*\w+\s*(,\s*\w+\s*)*;\s*)|(\s*>\s*\d+\s*,\s*\d+\s*,\s*\w+\s*,\s*\d+\s*(,\s*[\-]?\d+\s*)*;\s*))+)