我正在尝试匹配DMS纬度/经度。不过,我遇到了一些麻烦。到目前为止,我可以检测到模式,但是匹配会在特殊字符旁边返回一个无意义的字符。这是我的代码:
//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和°之间存在不受欢迎的Â。
请帮忙!
答案 0 :(得分:1)
您是否验证过字符集在HTTP标头中设置为UTF-8或Unicode?有关PHP和Unicode的更多信息,请参阅此页面:http://ibm.com/developerworks/library/os-php-unicode/index.html