2014-09-10 112 views
0

所以我有这样的例子:正则表达式,捉多个标签

<message> 
test 
test 
test 
</message> 
<message> 
test2 
test2 
test2 
</message> 

现在我要赶<message> and </message>

之间的两件事我有这样的正则表达式:/<message>\n(.*)<\/message>\n/mi 结果我得到的是这样的:

比赛1:

test 
test 
test 
</message> 
<message> 
test2 
test2 
test2 

我想这是结果:

比赛1:

test 
test 
test 

比赛2:

test2 
test2 
test2 

有没有解决我的问题的方法吗?感谢每一个答案。

回答

1

您需要添加一个量词?才能进行不情愿的匹配(又名可能的最短匹配)。

<message>\n(.*?)<\/message> 

DEMO

+0

或' \ n <\/message>(*?)(= \ N |?$)' – 2014-09-10 09:02:18