2010-03-08 49 views
1

我試圖想出一個正則表達式,以便能夠將以下類型的字符串解析爲組。正則表達式匹配每行多個組?

<link rel="alternate" type="application/rss+xml" title="[!PageTitle!]" href="[!SiteRoot!]/feed.xml" /> 

我的正則表達式爲:

\[\!(.+)\!\] 

這種表達的問題是,它似乎這一切拉成1組:

找到1匹配:

  1. 「[!PageTitle!]」href =「[!SiteRoot!]」有1組:

    1. "PageTitle!]" href="[!SiteRoot" 
    

我想不想正則表達式繼續...我缺少的邊界?理想的情況是我希望它發現2組

回答

1

試試[的PageTitle!] [SiteRoot!]:

\[\!(.+?)\!\] 

+量詞是貪婪的,所以會盡可能地匹配線條,捕捉線條中的第一個[接着是最後一個]。 +?是非貪婪的等價物。

另外,我使用的是Rad Software Regular Expression Designer。我喜歡。

0

看起來這工作正常:)

\[!(\w+)!\]