2016-04-26 20 views
1

を繰り返すことabcdです。私はテキスト</p> <p><code>a b c d</code></p> <p>所望の出力のためのキャプチャグループを繰り返すようにしようとしているキャプチャグループ機能

私は希望の結果を得るために([A-z])(?:(?:[ ]([A-z]))*)のようなキャプチャグループを繰り返してみましたが、キャプチャグループは最後のマッチだけを保持します。 regexは繰り返しキャプチャのキャプチャグループの結果を保持できませんか?もしそうなら、それは私が1つの正規表現で上記の可変長のようなデータをキャプチャする方法がないということですか?ありがとう。

+0

プログラミング言語/正規表現のフレーバーとは何ですか? –

+0

'(。)(\ 1)'?ものの種類? charとそれに続く同じ値の別のcharをマッチさせますか? –

+0

これらの繰り返されるグループには、 '(?i)[a-z]' –

答えて

0

Ony ドットネットはすべて1つの一致正規表現で取得できます。
キャプチャコレクションと呼ばれます。

基本的に、各グループは、文字列の配列をそのまま蓄積します。 1マッチ中に

例えば、

(?: 
     ([a-zA-Z])       # (1) 
     (?: [ ] | $) 
)+ 

、グループ1は、文字列のコレクションが含まれています。


そうでない場合は、他のエンジンでは、行動は、あなたが説明するようで、
キャプチャグループは、それぞれの定量化のパスで上書きされます。

+0

.NETだけではできません。 –

+0

ああ、それ以外に何がありますか? – sln

+0

BoostとPython PyPi regexモジュール。少なくとも。 Perl6には、繰り返されるグループを処理する特別な量指定子があります。 –

関連する問題

 関連する問題