だから私は、次のテキストを見しようとしています:マルチラインの正規表現 - 問題キャプチャ繰り返しグループ
This is some header 1
nonsense text 1
Repeated item 1
Repeated item 1 Data
nonsense text 1
Repeated item 2
Repeated item 2 Data
This is some header 2
nonsense text 1
Repeated item 1
Repeated item 1 Data
nonsense text 1
Repeated item 2
Repeated item 2 Data
私は繰り返しアイテムをキャプチャし、またそうのようにそれらを前のヘッダー内の数字を捕獲しようとしています:Eの、しかし
Repeated Item ([0-9]+)\sSome item data: (.*)
:
This is some header 1
Repeated item 1
Repeated item 1 Data
Repeated item 2
Repeated item 2 Data
This is some header 2
Repeated item 1
Repeated item 1 Data
Repeated item 2
Repeated item 2 Data
私はこれを用いて繰り返しアイテムをキャプチャは問題がありませんACH繰り返しアイテム、私もこのようにそれの前にヘッダーをキャプチャする(しかし、この正規表現は動作しません):
This is some header ([0-9]+).*Repeated Item ([0-9]+)\sSome item data: (.*)
私もちょうどこのテキストの上に1の誘導体である、次の正規表現を試してみました:
(?sm)This is some header ([0-9]+).*Repeated Item ([0-9]+)\sSome item data: (.*)
ただし、上記の正規表現では、最初のヘッダーと最小繰り返しアイテムだけがキャプチャされます。正規表現を使って達成しようとしていることを達成する方法はありますか?私は明らかに手作業で行ごとにテキストを解析することができますが、私はこれを正規表現で実現できると期待しています。
正規表現*で*を行うのはちょっとばかりですが、行ごとにテキストを解析する方がずっと良い方法です。あなたの時間を無駄にしないでください。 –
@CasimiretHippolyte、あなたはこれを達成するために正規表現を使用する理由は愚かなアイデアを精緻化できますか?私はあなたにコメントしていただきありがとうございますが、アプローチAがアプローチBよりも優れている理由を説明せずにアプローチが愚かであると言うだけの価値はありません。 –
キャプチャしようとしているものの例を追加してください。 'Repeated item'を含む全ての行? – dawg