2011-12-29 60 views

回答

22
\.(?=.*\.) 

匹配的點(\.),它必須有下列它((?=.*\.))的另一點。

(這是假設的正則表達式引擎支持lookahead,例如PCRE,Python等)

+0

謝謝你這個工作!我用前瞻去嘗試這麼多,不能讓它工作。乾杯! – malamili 2011-12-29 14:07:33

+0

適用於JavaScript。你可以得到你的正則表達式解釋[這裏](http://rick.measham.id.au/paste/explain.pl?regex=%5C.%28%3F%3D.*%5C.%29) – mayrs 2014-06-17 09:33:38

+0

工作正常與Java也一樣。 – Gautam 2014-12-11 12:13:53

2

所以你沒有指定你的正則表達式的工具,發動機等,那麼你可以使用例如做到這一點sed(只有工作,如果總是有兩個數字在最後dot最後dot總是存在):

echo "50.00.00..00.00" | sed 's/\.//;s/\(..\)$/.\1/' 

但還有其他幾種方法,例如與先行正則表達式(如果它支持你)。

HTH

+0

是的,我應該提到的是,我正在使用Java。 KennyTM的答案爲我工作。不管怎麼說,多謝拉! – malamili 2011-12-29 14:08:08

相關問題