【发布时间】:2016-07-20 03:18:25
【问题描述】:
考虑以下几点:
$lat = '89° 5'; // works
if(preg_match('/^(([0-8]\d|\d)°?(\s?([0-5]\d|\d))?)(N|S)?$/', $lat, $la)){
$ck = 'DD° MM format --> ';
}
else{
$test = 'invalid $lat format';
}
if(isset($ck)){
$test = $ck.$la[0];
}
echo $test;
当$lat = '89°5' 一切正常。我想了解的是为什么$lat = '89 5' 失败了?也许我的大脑不工作,但似乎最后一个不应该是无效格式,因为°?。感谢您帮助我理解。
【问题讨论】:
-
如果添加
/u修饰符会发生什么? -
我在 debian 上安装 php 5.6 时收到无效格式错误。我会玩这个...
-
3v4l.org 适用于所有 PHP 版本:3v4l.org/2aL3N
-
我通过
/(*UTF8)^(([0-8]\d|\d)°?(\s?([0-5]\d|\d))?)(N|S)?$/@PHPglue,你能确认一下吗?
标签: php regex preg-match pcre