<?php
$re = '/^{map:\h+geo="(?P<lat>-?\d+(?:\.\d+)?)(?:,\d+)?,(?P<lon>-?\d+(?:\.\d+)?)(?:,\d+)?"[^}]+}/';
$str = '{map: geo="20.471884,-157.505,6" p="Hawaii"}';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
$lat = $matches[0]["lat"];
$lon = $matches[0]["lon"];
echo $lat;
echo PHP_EOL;
echo $lon;
- Output for 7.1.25 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
- 20.471884
-157.505
preferences:
187.64 ms | 403 KiB | 183 Q