Cómo funciona el patrón
| Parte | Significado |
|---|---|
-? | Signo menos opcional |
\d{1,3}(?:,\d{3})+ | Números con separadores de miles, como 1,200 |
|\d+ | O dígitos simples |
(?:\.\d+)? | Parte decimal opcional |
Ejemplos de código
JavaScript
const matches = text.match(/-?(?:\d{1,3}(?:,\d{3})+|\d+)(?:\.\d+)?/g) ?? [];Python
import re
matches = re.findall(r'-?(?:\d{1,3}(?:,\d{3})+|\d+)(?:\.\d+)?', text)PHP
preg_match_all('/-?(?:\d{1,3}(?:,\d{3})+|\d+)(?:\.\d+)?/', $text, $m);
$matches = $m[0];
Notas y limitaciones
Elimina las comas antes de convertir una coincidencia en número. Para números escritos como 1.200,50 (alemán y otros muchos idiomas), intercambia la coma y el punto en el patrón.
Probador de expresiones regulares
Escribe un patrón y observa cómo se resaltan las coincidencias en tiempo real en tu texto de prueba.