2012-02-06 59 views
0

我想匹配DMS緯度/經度。不過,我遇到了一些麻煩。到目前爲止,我可以檢測到該模式,但匹配會在特殊字符旁邊返回無意義的字符。這裏是我的代碼:的preg_match()加入廢話字符

//Begin code 
$pattern = '/[0-9]{1,3}[:| |\x{00B0}]{0,1}[0-9]{1,2}[\']{0,1}[0-9]{1,2}["]{0,1}[N|S|E|W]/ui'; 
$value = "12°30'23\"S"; 
preg_match($pattern,$value,$matches); 
print_r($matches); 
//End code 

,這裏是輸出:

Array ([0] => 12°30'23"S) 

正如你所看到的,12和度之間存在着不期望的Â。

請幫忙!

+2

您是否驗證字符集設置爲UTF-8或Unicode中的HTTP標頭?看到這對PHP和Unicode的詳細信息:http://www.ibm.com/developerworks/library/os-php-unicode/index.html – 2012-02-06 04:13:52

+0

嗯,我覺得愚蠢。感謝彼得 – rogue780 2012-02-06 04:20:32

+0

@PeterSmith,如何發佈,作爲一個答案?這將有助於從尚未解答的問題列表中解決問題... – 2012-02-08 02:07:27

回答