Python (re)

CSS rgb() Color in PY

Match CSS rgb() and rgba() color functions, including an optional alpha channel.

Try it in the PY tester →

Pattern

regexPY
rgba?\(\s*\d{1,3}\s*,\s*\d{1,3}\s*,\s*\d{1,3}(?:\s*,\s*(?:0|1|0?\.\d+))?\s*\)   (flags: gi)

Python (re) code

pyPython
import re

pattern = re.compile(r"rgba?\(\s*\d{1,3}\s*,\s*\d{1,3}\s*,\s*\d{1,3}(?:\s*,\s*(?:0|1|0?\.\d+))?\s*\)", re.IGNORECASE)
input_text = "rgb(255, 87, 51)"
for m in pattern.finditer(input_text):
    print(m.group(0))

Stdlib `re` module — no third-party dependency. Works on Python 3.6+.

How the pattern works

Matches rgb( or rgba( followed by three comma-separated 1–3 digit components and an optional fourth alpha component (0, 1, or decimal).

Examples

Input

rgb(255, 87, 51)

Matches

  • rgb(255, 87, 51)

Input

rgba(0, 0, 0, 0.5)

Matches

  • rgba(0, 0, 0, 0.5)

Input

color: blue;

No match

Same pattern, other engines

← Back to CSS rgb() Color overview (all engines)