2013-06-27 19 views
0

我這裏有這個示例:如何停止首次比賽?

received date 
something 
something 
26/6/2013 
. 
. 
due date 
something 
27/6/2013 

我想只是收稿日期第一次出現。我試圖用這個正則表達式,我有:

(?is)(?<=(invoice)?(?<!due.*?)date.*?)(\d{1,4}/\d{1,4}/\d{1,4}) 

我想要做的是讓日起,要麼有一個接受它之前或沒有,但要避免讓是否有因的前綴。我只是想獲得26/6/2013 ..也有可能,它會工作相同像這樣的東西:

date 
something 
something 
26/6/2013 
. 
. 
due date 
something 
27/6/2013 

我新的正則表達式,我花了很多時間嘗試不同的組合但似乎沒有工作!

請幫忙謝謝!

編輯:

我使用快報..

這裏是我從上面得到的輸出:

26/6/2013 
27/6/2013 

同樣,我只想要得到的第一個..

+0

你至少應該告訴你正在使用快報:-) – HamZa

回答

0

你可以試試這個

received date[\w\s]*(?!due date)[\w\s]*[^\d](\d{1,4}/\d{1,4}/\d{1,4}) 

1組捕獲日期

OR

/received date.*?(?![\r\n]+due date).*?[^\d](\d{1,4}/\d{1,4}/\d{1,4})/s 

+0

嗯,沒了對不起它不爲我工作.. – user488792

+0

@ user488792嘗試第二個1 – Anirudha

+0

對不起,仍然沒有運氣。我沒有收到任何結果,如果我試圖刪除「收到」我仍然得到兩個。 – user488792

0

問題可以簡化爲:獲得第一次約會。

(?s)(\d{1,2}/\d{1,2}/\d{2,4}).*