So funktioniert das Muster
| Teil | Bedeutung |
|---|---|
(?:[A-Za-z0-9+\/]{4})* | Vollständige Vierer-Blöcke |
[A-Za-z0-9+\/]{2}== | Oder ein letzter Block mit zwei Padding-Zeichen |
[A-Za-z0-9+\/]{3}= | Oder ein letzter Block mit einem Padding-Zeichen |
Code-Beispiele
JavaScript
const re = /^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/;
re.test(value); // true or falsePython
import re
bool(re.fullmatch(r'(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?', value))PHP
preg_match('/^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/', $value) === 1;
Hinweise und Einschränkungen
Der leere String wird ebenfalls gefunden, prüfe daher die Länge separat. Für base64url (JWTs, URLs) ersetze +\/ durch _- und mach das Padding optional. Dekodiere mit dem Base64-Encoder/Decoder.
Regex-Tester
Gib ein Muster ein und sieh zu, wie Übereinstimmungen in deinem Testtext in Echtzeit hervorgehoben werden.