特定のパターンで囲まれた情報で構成されるテキストがあります。私が知っている唯一のことはパターンです: "${template.start}" と ${template.end} 単純にするために、${template.start} と ${template.end} を例。
したがって、テキストの 1 つのエントリは次のようになります。
aINFORMATIONHEREa
これらのエントリがテキスト内でいくつ連結されているかわかりません。したがって、次も正しいです。
aFOOOOOOaaASDADaaASDSDADa
「a」で囲まれた情報を抽出する正規表現を書きたいと思います。
私の最初の試みは次のことでした:
a(.*)a
これは、テキストにエントリが 1 つしかない限り機能します。複数のエントリがあるとすぐに、.*
すべてが一致するため失敗します。a(.*)a
そのため、 onを使用するaFOOOOOOaaASDADaaASDSDADa
と、テキストの最初の文字から最後の文字までのすべてを含むキャプチャ グループが 1 つだけになり、"a" になります。
FOOOOOOaaASDADaaASDSDAD
私が取得したいのは次のようなものです
captureGroup(0): aFOOOOOOaaASDADaaASDSDADa
captureGroup(1): FOOOOOO
captureGroup(2): ASDAD
captureGroup(3): ASDSDAD
テキストから各エントリを抽出し、各エントリから「a」で囲まれた情報を抽出できると便利です。ちなみにQt4のQRegExpクラスを使っています。
ヒントはありますか?ありがとう!マーカス
この質問の複数のバリエーションが以前に見られました。関連するさまざまな議論:
- 文字列内のすべての \n を置き換える正規表現ですが、[code] [/code] タグ内のものは置き換えません
- 正規表現を使用して、周囲の文字列を含めずに他の 2 つのパターンで囲まれたパターンを見つけるにはどうすればよいですか?
- RegExp を使用して括弧内の数字を照合し、それをインクリメントします
- 一重引用符または二重引用符で囲まれていない場合にスペースを使用して文字列を分割するための正規表現
- HTMLタグ内にあるものを除いて、どの正規表現がテキストと一致しますか?
そしておそらく他の...