So funktioniert das Muster
| Teil | Bedeutung |
|---|---|
-? | Optionales Minuszeichen |
\d{1,3}(?:,\d{3})+ | Zahlen mit Tausendertrennzeichen, wie 1,200 |
|\d+ | Oder einfache Ziffern |
(?:\.\d+)? | Optionaler Dezimalteil |
Code-Beispiele
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];
Hinweise und Einschränkungen
Entferne die Kommas, bevor du einen Treffer in eine Zahl umwandelst. Für Zahlen wie 1.200,50 (deutsche und viele andere Schreibweisen) tauschst du im Muster das Komma und den Punkt aus.
Regex-Tester
Gib ein Muster ein und sieh zu, wie Übereinstimmungen in deinem Testtext in Echtzeit hervorgehoben werden.