Pregunta

En la búsqueda, quiero comprobar si la consulta es latitud y longitud o simplemente búsqueda de texto con PHP.

$query = '-122.0307642, 37.3316930';

latitud y longitud pueden tener '-'. También en ellos

¿Qué patrón preg_match será por esto?

¿Fue útil?

Solución

La siguiente expresión regular coincidirá con dos números (con o sin un signo negativo, separados por una coma) del formato a.b donde a y b son Digit-secuencias de longitud mínimo uno.

(-?\d+\.\d+)\s*,\s*(-?\d+\.\d+)

Otros consejos

Algo como esto:

(-?\d+(?:\.\d+)?)(?:,\s*|\s+)(-?\d+(?:\.\d+)?)

Esto le reporte dos partidos, que luego se puede echar a los flotadores y comprobar contra los límites LAT / LNG.

Esto también permitirá que los dos números para ser separados por el espacio. Si desea permitir sólo una coma, utilice:

(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top