2010-04-16 47 views
6

正如我剛剛從this question,.NET regexes can access individual matches within a repeated capturing group得知的那樣。哪種正則表達式支持捕獲(而不是捕獲組)?

一,即,如果我申請喜歡\b(\w+\s*)+一個正則表達式來一串字,只有最後一個字將被存儲在\1Match.Groups(1).Value,但使用Match.Groups(1).Captures我得到的所有個人訪問相匹配的正則表達式遍歷。

除了.NET以外,還有其他正則表達式支持嗎?

+1

真的!我不知道。 +1 – YOU 2010-04-16 11:47:46

+0

可能是Jan Goyvaerts的呼叫 – YOU 2010-04-16 11:53:44

回答

4

據我所知,只有.NET和Perl 6提供這種功能。

+0

感謝Perl 6.看起來JGSoft引擎正在進行一些小修改。捕獲對我來說似乎是一個有用的功能。無論遞歸/均衡正則表達式是一件好事,還是他們使正則表達式完全無法維護,我仍然處於困境之中。 – 2010-04-16 12:30:04

+0

我傾向於認爲,如果您需要遞歸*或*中間捕獲,則根本不應該使用正則表達式。至少,不是Perl 5時代的正則表達式; Perl 6包含對regex語法的重大更改,使得使用這些高級功能變得更加容易,並且仍然能夠讀取您寫的內容。 – 2010-04-16 13:04:52

+0

我剛剛看了Perl 6的正則表達式文檔。哇,那*相對於Perl 5有很大的改變... – 2010-04-16 14:00:17