2014-02-27 46 views
5

停止我用正則表達式積極前瞻不會在第一次出現

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

以下數據(有數據沒有換行字符,我把它更好看)來捕捉字符集字符串

<div class="box_t">Parameters</div> 
<div class="box_c">Charset: [email protected]}N9<br/> 
Input Base: 23<br/>Solution Base: 19<br/> 
Timelimit: 3.1416 seconds<br/></div> 

然而,我的比賽結束了

[email protected]}N9<br/> 
Input Base: 23<br/> 
Solution Base: 19<br/> 
Timelimit: 3.1416 seconds 

看起來積極的lookahead在第一次出現後沒有停止。有沒有辦法讓它停止?

回答

14

一個簡單的方法是使用非貪婪算子。

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

arghhh你打我打了一拳 – mdesantis

+0

啊,不知道?可以用這種方式:p。謝謝 – Flmhdfj

+0

@sawa謝謝!你可以解釋一下這是如何工作的,我正在尋找類似的解決方案一段時間,我不確定這是如何工作的,但它確實如此! – soey

相關問題