Regex für Hex-Farbcode

Nutze /^#(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/, um zu prüfen, ob eine ganze Zeichenkette ein gültiger Hex-Farbcode ist. Jedes Beispiel unten wurde gegen das Muster getestet, und du kannst es mit den vorgeladenen Beispielen im Regex-Tester öffnen.

Aktualisiert am

/^#(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/
Im Regex-Tester öffnen
EingabeErgebnis
#fff✓ Treffer
#1A2B3C✓ Treffer
#1a2b3c80✓ Treffer
#f0f8✓ Treffer
1a2b3c✗ Kein Treffer
#12345✗ Kein Treffer
#ggg✗ Kein Treffer
#1234567✗ Kein Treffer

So funktioniert das Muster

TeilBedeutung
^#Beginnt mit #
[0-9a-fA-F]{3,4}Kurzform: #rgb oder #rgba
[0-9a-fA-F]{6}Langform: #rrggbb
[0-9a-fA-F]{8}Langform mit Alpha: #rrggbbaa

Code-Beispiele

JavaScript

const re = /^#(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/;
re.test(value); // true or false

Python

import re

bool(re.fullmatch(r'#(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})', value))

PHP

preg_match('/^#(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/', $value) === 1;

Hinweise und Einschränkungen

Alle vier Längen sind gültiges CSS. Entferne die Alternativen {3,4} und {8}, wenn dein System nur sechsstellige Farben akzeptiert. Konvertiere zwischen Formaten mit dem Farbkonverter.

Häufige Fragen

Wie lautet der Regex für Hex-Farbcodes?
/^#(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/ — er prüft die gesamte Zeichenkette. In der Tabelle oben siehst du, was jeder Teil bewirkt.
Welche Beispiele treffen zu?
Von den getesteten Beispielen treffen diese zu: #fff, #1A2B3C, #1a2b3c80, #f0f8. Die anderen nicht.
Wie teste ich diesen Regex?
Klicke auf „Im Regex-Tester öffnen“ – Muster, Flags und Beispieltext werden automatisch geladen, und Treffer werden beim Bearbeiten markiert.