preg_match () добавление бессмысленного символа - PullRequest
0 голосов
/ 06 февраля 2012

Я пытаюсь соответствовать широте / долготе 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 и ° существует нежелательное значение.

Пожалуйста, помогите!

1 Ответ

1 голос
/ 18 февраля 2012

Вы убедились, что кодировка установлена ​​в UTF-8 или Unicode в заголовках HTTP?Смотрите эту страницу для получения дополнительной информации о PHP и Unicode: http://ibm.com/developerworks/library/os-php-unicode/index.html

...