我有一个这种格式的字符串。
" 1784_Anarchy +酿造+共〜单位+ 5 + +怀特豪斯农场+中心〜Stannington〜莫珀斯〜NE61 + 6AW_ ^ 55.13033〜-1.702607"
模式看起来像
preg_match_all("\^d+\", $map, $out, PREG_PATTERN_ORDER);
所以lat - \ ^ d + .d +? lng - \ ~d + .d +?
尝试获取纬度和长值 - lat:55.13033 lng:-1.702607
答案 0 :(得分:2)
如果lat和lng字符串位置保持不变,这里有一个快速的方法。否则发布其他实例
$str = '1784_Anarchy+Brew+Co~Unit+5+Whitehouse+Farm+Centre~Stannington~Morpeth~NE61+6AW_^55.13033~-1.702607';
preg_match_all("/(?<=[\^|\~])\-?([\d\.]+)/", $str, $matches);
$lat = $matches[0][0];
$lng = $matches[0][1];
echo "lat: $lat, Lng: $lng";
//output: lat: 55.13033, Lng: -1.702607
答案 1 :(得分:0)