在搜索时,我想检查查询是纬度和经度,还是仅使用PHP进行文本搜索。
$query = '-122.0307642, 37.3316930';
纬度和经度也可以包含' - '。
这将是什么preg_match
模式?
答案 0 :(得分:0)
这样的事情:
(-?\d+(?:\.\d+)?)(?:,\s*|\s+)(-?\d+(?:\.\d+)?)
这将为您提供两个匹配,然后您可以将其转换为浮点数并检查lat / lng界限。
这也允许两个数字用空格分隔。如果您只想允许使用逗号,请使用:
(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)
答案 1 :(得分:0)
以下正则表达式将匹配格式a.b
的两个数字(带或不带负号,用逗号分隔),其中a
和b
是最小长度的数字序列之一。
(-?\d+\.\d+)\s*,\s*(-?\d+\.\d+)