2014-07-12 48 views
0

我有一些字符串作爲地圖的輸出。如何從地圖的輸出字符串中提取值?

如何從字符串中提取最後兩個緯度和經度值。由於輸出字符串是:

10337 Lamar Avenue, Overland Park, KS 66207, USA, 38.94048888688807, -94.65758273359376 

Mirzapur To Niyana Road, Niyana, Haryana 125044, India, 29.163692827306072, 75.83599163535155 

301-349 South Walnut Street, Coffeyville, KS 67337, USA, 37.04092845300189, -95.61538733789064 

現在我想存儲來自兩個不同變量的字符串的最後兩個值。

for example from first string: 

$Latitude = 38.94048888688807 ; 
$Longitude = -94.65758273359376 ; 

我很窮的正則表達式,所以請幫助我。

+2

用什麼語言? – Braj

+0

@braj我認爲它的PHP,基於有問題的標籤... – Aleksandar

+0

@Aleksandar標籤稍後添加。 – Braj

回答

3

嘗試用Positive Lookbehind和指標1和2獲得匹配的組

(?<=,\s)(-?\d+\.\d+),\s(-?\d+\.\d+)$ 

Online demo

示例代碼:

$re = "/(?<=,\\s)(-?\\d+\\.\\d+),\\s(-?\\d+\\.\\d+)$/m"; 
$str = ... 

preg_match_all($re, $str, $matches); 
2

這是你要找的表達:

,\s*(-?\d+\.\d+),\s*(-?\d+\.\d+)$ 

捕獲組1將包含緯度,捕獲組2將包含經度。

小提琴可用here

+0

+1從我身邊。我想知道一件事。緯度或經度是否必須有小數? – Braj

+0

我也需要一點...請! – user3777827