积极的前瞻不会在第一次出现时停止

时间:2014-02-27 10:08:26

标签: ruby regex

我使用正则表达式

(?<=Charset:\s).+(?=<br\/>) 

关于以下数据(数据中没有换行符,我让它看起来更好)来捕获Charset字符串

<div class="box_t">Parameters</div>
<div class="box_c">Charset: i763zLFYKBqVs@nZ8PyO}N9<br/>
Input Base: 23<br/>Solution Base: 19<br/>
Timelimit: 3.1416 seconds<br/></div>

然而,我的比赛结束了

i763zLFYKBqVs@nZ8PyO}N9<br/>
Input Base: 23<br/>
Solution Base: 19<br/>
Timelimit: 3.1416 seconds

在第一次出现之后,似乎没有停止积极前瞻。有没有办法让它停止?

1 个答案:

答案 0 :(得分:23)

一种简单的方法是使用非贪婪的算子。

(?<=Charset:\s).+?(?=<br\/>)