2014-06-10 75 views
0

我有以下字符串:正則表達式先行替代

30.03.2014 

我需要一個正則表達式,這給了我這個部分:

03 

我不允許使用超前,因爲它不受支持。 表達式應該只返回「。」之間的字符串。 我所做的表達:

\.(.*?)\. 

拿過點,包括點之間的字符串:

.03. 

我不想點是在結果中。這是我測試它的地方:RegExr

謝謝。

+0

您使用的是什麼正則表達式? – anubhava

+1

我的答案應該是「不要使用正則表達式解析」,並指向任何類型的日期庫/對象在您使用的語言,所以我最好不要發佈它。 ;)另外,當使用RegExr時,將鼠標懸停在結果上,並檢查它是否列爲「group」,因爲這是你的'()'組包裝的。 –

回答

1

首先,你可以用(\d+)

接下來的事情更換(.*?)是你的正則表達式正常工作,你只需要找到匹配的組(例如,在PHP這將是$matches[1])。您在演示中看到的是與正則表達式(即$matches[0])匹配的整個字符串,而不僅僅是您指定的[1]組。

+0

謝謝你,像一個魅力工作。 –

0

您使用的方法是正確的。現在你所要做的就是用你最喜歡的編程語言來抓住括號內的內容。對於每種編程語言,都有不同的語法。