Go (RE2)

HTML5 Color Input Value in GO

Validate the value of an HTML5 `<input type="color">` — exactly 6 hex digits with leading hash.

Try it in the GO tester →

Pattern

regexGO
^#[0-9a-fA-F]{6}$

Go (RE2) code

goGo
package main

import (
	"fmt"
	"regexp"
)

func main() {
	re := regexp.MustCompile(`^#[0-9a-fA-F]{6}$`)
	input := `#ff5733`
	for _, match := range re.FindAllString(input, -1) {
		fmt.Println(match)
	}
}

Uses `regexp.MustCompile` (panics on bad patterns at startup) and `FindAllString` for all matches.

How the pattern works

^# requires the leading hash. [0-9a-fA-F]{6} requires exactly 6 hexadecimal digits. $ anchors the end. Note this is STRICTER than the general hex-color pattern: the HTML5 color input only accepts the 6-digit form, not the 3-digit shorthand.

Examples

Input

#ff5733

Matches

  • #ff5733

Input

#0F0F0F

Matches

  • #0F0F0F

Input

#fff

No match

Same pattern, other engines

← Back to HTML5 Color Input Value overview (all engines)