#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?i)(#)(?:([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})?|([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])?)|(rgb|rgba)\((?:\s*(0*(?:0|1[0-9]{0,2}|2(?:[0-4][0-9]?|5[0-4]?|[6-9])?|[3-9][0-9]?)(?:\.[0-9]+)?|255(?:\.0+)?|\.[0-9]+)\s*,\s*(0*(?:0|1[0-9]{0,2}|2(?:[0-4][0-9]?|5[0-4]?|[6-9])?|[3-9][0-9]?)(?:\.[0-9]+)?|255(?:\.0+)?|\.[0-9]+)\s*,\s*(0*(?:0|1[0-9]{0,2}|2(?:[0-4][0-9]?|5[0-4]?|[6-9])?|[3-9][0-9]?)(?:\.[0-9]+)?|255(?:\.0+)?|\.[0-9]+)(?:\s*,\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+))?\s*|\s*(0*(?:0|1[0-9]{0,2}|2(?:[0-4][0-9]?|5[0-4]?|[6-9])?|[3-9][0-9]?)(?:\.[0-9]+)?|255(?:\.0+)?|\.[0-9]+)\s+(0*(?:0|1[0-9]{0,2}|2(?:[0-4][0-9]?|5[0-4]?|[6-9])?|[3-9][0-9]?)(?:\.[0-9]+)?|255(?:\.0+)?|\.[0-9]+)\s+(0*(?:0|1[0-9]{0,2}|2(?:[0-4][0-9]?|5[0-4]?|[6-9])?|[3-9][0-9]?)(?:\.[0-9]+)?|255(?:\.0+)?|\.[0-9]+)\s*|\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s*,\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s*,\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)(?:\s*,\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+))?\s*|\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s+(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s+(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s*|\s*(0*(?:0|1[0-9]{0,2}|2(?:[0-4][0-9]?|5[0-4]?|[6-9])?|[3-9][0-9]?)(?:\.[0-9]+)?|255(?:\.0+)?|\.[0-9]+)\s+(0*(?:0|1[0-9]{0,2}|2(?:[0-4][0-9]?|5[0-4]?|[6-9])?|[3-9][0-9]?)(?:\.[0-9]+)?|255(?:\.0+)?|\.[0-9]+)\s+(0*(?:0|1[0-9]{0,2}|2(?:[0-4][0-9]?|5[0-4]?|[6-9])?|[3-9][0-9]?)(?:\.[0-9]+)?|255(?:\.0+)?|\.[0-9]+)(?:\s*(?:\/)\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+))?\s*|\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s+(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s+(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)(?:\s*(?:\/)\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+))?\s*)\)|(hsl|hsla)\((?:\s*(-?[0-9]+(?:\.[0-9]+)?(?:deg|rad|grad|turn)?)\s+(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s+(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)(?:\s*(?:\/)\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+))?\s*|\s*(-?[0-9]+(?:\.[0-9]+)?(?:deg|rad|grad|turn)?)\s*,\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s*,\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)(?:\s*,\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+))?\s*|\s*(-?[0-9]+(?:\.[0-9]+)?(?:deg|rad|grad|turn)?)\s+(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s+(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s*)\)|(hwb)\(\s*(-?[0-9]+(?:\.[0-9]+)?(?:deg|rad|grad|turn)?)\s+(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)\s+(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)(?:(?:\s*(?:\/)\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+))?\s*)?\)|(lab|oklab)\(\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?)\s+(-?(?:0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|(?:0|1(?:[0-1][0-9]?|2[0-4]?|[3-9])?|[2-9][0-9]?)(?:\.[0-9]+)?|125(?:\.0+)?))\s+(-?(?:0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|(?:0|1(?:[0-1][0-9]?|2[0-4]?|[3-9])?|[2-9][0-9]?)(?:\.[0-9]+)?|125(?:\.0+)?))\s*(?:(?:\s*(?:\/)\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+))?\s*)?\)|(lch|oklch)\(\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?)\s+(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|(?:0|1(?:[0-4][0-9]?|[5-9])?|[2-9][0-9]?)(?:\.[0-9]+)?|150(?:\.0+)?)\s+(-?[0-9]+(?:\.[0-9]+)?(?:deg|rad|grad|turn)?)\s*(?:(?:\s*(?:\/)\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+))?\s*)?\)|(color)\((?:(srgb|srgb-linear|display-p3|a98-rgb|prophoto-rgb|rec2020)(?:\s+|\s*,\s*)(0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+|0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)(?:\s+|\s*,\s*)(0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+|0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)(?:\s+|\s*,\s*)(0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+|0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%)(?:(?:\s+\s*(?:\/)\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+))?\s*)?|(xyz|xyz-d50|xyz-d65)(?:\s+|\s*,\s*)(-?[0-9]+(?:\.[0-9]+)?%?)(?:\s+|\s*,\s*)(-?[0-9]+(?:\.[0-9]+)?%?)(?:\s+|\s*,\s*)(-?[0-9]+(?:\.[0-9]+)?%?)(?:(?:\s+\s*(?:\/)\s*(0*(?:(?:0|[1-9][0-9]?)(?:\.[0-9]+)?|100(?:\.0+)?|\.[0-9]+)%|0*0*(?:\.[0-9]+)?|1(?:\.0+)?|\.[0-9]+))?\s*)?)\)|(yellowgreen|yellow|whitesmoke|white|wheat|VisitedText|violet|turquoise|transparent|tomato|thistle|teal|tan|steelblue|springgreen|snow|slategrey|slategray|slateblue|skyblue|silver|sienna|SelectedItemText|SelectedItem|seashell|seagreen|sandybrown|salmon|saddlebrown|royalblue|rosybrown|red|rebeccapurple|purple|powderblue|plum|pink|peru|peachpuff|papayawhip|palevioletred|paleturquoise|palegreen|palegoldenrod|orchid|orangered|orange|olivedrab|olive|oldlace|navy|navajowhite|moccasin|mistyrose|mintcream|midnightblue|mediumvioletred|mediumturquoise|mediumspringgreen|mediumslateblue|mediumseagreen|mediumpurple|mediumorchid|mediumblue|mediumaquamarine|maroon|MarkText|Mark|magenta|LinkText|linen|limegreen|lime|lightyellow|lightsteelblue|lightslategrey|lightslategray|lightskyblue|lightseagreen|lightsalmon|lightpink|lightgrey|lightgreen|lightgray|lightgoldenrodyellow|lightcyan|lightcoral|lightblue|lemonchiffon|lawngreen|lavenderblush|lavender|khaki|ivory|indigo|indianred|hotpink|honeydew|HighlightText|Highlight|grey|greenyellow|green|GrayText|gray|goldenrod|gold|ghostwhite|gainsboro|fuchsia|forestgreen|floralwhite|firebrick|FieldText|Field|dodgerblue|dimgrey|dimgray|deepskyblue|deeppink|darkviolet|darkturquoise|darkslategrey|darkslategray|darkslateblue|darkseagreen|darksalmon|darkred|darkorchid|darkorange|darkolivegreen|darkmagenta|darkkhaki|darkgrey|darkgreen|darkgray|darkgoldenrod|darkcyan|darkblue|cyan|currentColor|crimson|cornsilk|cornflowerblue|coral|chocolate|chartreuse|CanvasText|Canvas|cadetblue|ButtonText|ButtonFace|ButtonBorder|burlywood|brown|blueviolet|blue|blanchedalmond|black|bisque|beige|azure|aquamarine|aqua|antiquewhite|aliceblue|ActiveText|AccentColorText|AccentColor)"
Local $sString = "#090" & @CRLF & _
"#009900" & @CRLF & _
"#090a" & @CRLF & _
"#009900aa" & @CRLF & _
"" & @CRLF & _
"rgb(34, 12, 64, 0.6)" & @CRLF & _
"rgba(34, 12, 64, 0.6)" & @CRLF & _
"rgb(34 12 64 / 0.6)" & @CRLF & _
"rgba(34 12 64 / 0.3)" & @CRLF & _
"rgb(34 12 64 / 60%)" & @CRLF & _
"rgba(34.6 12 64 / 30%)" & @CRLF & _
"" & @CRLF & _
"hsl(30, 100%, 50%, 0.6)" & @CRLF & _
"hsla(30, 100%, 50%, 0.6)" & @CRLF & _
"hsl(30 100% 50% / 0.6)" & @CRLF & _
"hsla(30 100% 50% / 0.6)" & @CRLF & _
"hsl(30 100% 50% / 60%)" & @CRLF & _
"hsla(30.2grad 100% 50% / 60%)" & @CRLF & _
"" & @CRLF & _
"hwb(90 10% 10%)" & @CRLF & _
"hwb(90 10% 10% / 0.5)" & @CRLF & _
"hwb(90deg 10% 10%)" & @CRLF & _
"hwb(1.5708rad 60% 0%)" & @CRLF & _
"hwb(0.25turn 0% 40% / 50%)" & @CRLF & _
"" & @CRLF & _
"lab(29.2345% 39.3825 20.0664)" & @CRLF & _
"lab(52.2345 40.1645 59.9971)" & @CRLF & _
"lab(60.2345 -5.3654 58.956)" & @CRLF & _
"lab(62.2345% -34.9638 47.7721)" & @CRLF & _
"lab(67.5345 -8.6911 -41.6019)" & @CRLF & _
"lab(29.69% 44.888% -29.04%)" & @CRLF & _
"" & @CRLF & _
"lch(29.2345% 44.2 27)" & @CRLF & _
"lch(52.2345% 72.2 56.2)" & @CRLF & _
"lch(60.2345 59.2 95.2)" & @CRLF & _
"lch(62.2345% 59.2 126.2)" & @CRLF & _
"lch(67.5345% 42.5 258.2)" & @CRLF & _
"lch(29.69% 45.553% 327.1)" & @CRLF & _
"" & @CRLF & _
"oklab(40.101% 0.1147 0.0453)" & @CRLF & _
"oklab(59.686% 0.1009 0.1192)" & @CRLF & _
"oklab(0.65125 -0.0320 0.1274)" & @CRLF & _
"oklab(66.016% -0.1084 0.1114)" & @CRLF & _
"oklab(72.322% -0.0465 -0.1150)" & @CRLF & _
"oklab(42.1% 41% -25%)" & @CRLF & _
"" & @CRLF & _
"oklch(40.101% 0.12332 21.555)" & @CRLF & _
"oklch(59.686% 0.15619 49.7694)" & @CRLF & _
"oklch(0.65125 0.13138 104.097)" & @CRLF & _
"oklch(0.66016 0.15546 134.231)" & @CRLF & _
"oklch(72.322% 0.12403 247.996)" & @CRLF & _
"oklch(42.1% 48.25% 328.4)" & @CRLF & _
"" & @CRLF & _
"color(srgb 100% 100% 100% / 100%)" & @CRLF & _
"color(xyz 999 999 999 / 100%)" & @CRLF & _
"" & @CRLF & _
"yellowgreen" & @CRLF & _
"yellow" & @CRLF & _
"whitesmoke" & @CRLF & _
"white" & @CRLF & _
"wheat" & @CRLF & _
"violet" & @CRLF & _
"turquoise" & @CRLF & _
"tomato" & @CRLF & _
"thistle" & @CRLF & _
"teal" & @CRLF & _
"tan" & @CRLF & _
"steelblue" & @CRLF & _
"springgreen" & @CRLF & _
"snow" & @CRLF & _
"slategrey" & @CRLF & _
"slategray" & @CRLF & _
"slateblue" & @CRLF & _
"skyblue" & @CRLF & _
"silver" & @CRLF & _
"sienna" & @CRLF & _
"seashell" & @CRLF & _
"seagreen" & @CRLF & _
"sandybrown" & @CRLF & _
"salmon" & @CRLF & _
"saddlebrown" & @CRLF & _
"royalblue" & @CRLF & _
"rosybrown" & @CRLF & _
"red" & @CRLF & _
"rebeccapurple" & @CRLF & _
"purple" & @CRLF & _
"powderblue" & @CRLF & _
"plum" & @CRLF & _
"pink" & @CRLF & _
"peru" & @CRLF & _
"peachpuff" & @CRLF & _
"papayawhip" & @CRLF & _
"palevioletred" & @CRLF & _
"paleturquoise" & @CRLF & _
"palegreen" & @CRLF & _
"palegoldenrod" & @CRLF & _
"orchid" & @CRLF & _
"orangered" & @CRLF & _
"orange" & @CRLF & _
"olivedrab" & @CRLF & _
"olive" & @CRLF & _
"oldlace" & @CRLF & _
"navy" & @CRLF & _
"navajowhite" & @CRLF & _
"moccasin" & @CRLF & _
"mistyrose" & @CRLF & _
"mintcream" & @CRLF & _
"midnightblue" & @CRLF & _
"mediumvioletred" & @CRLF & _
"mediumturquoise" & @CRLF & _
"mediumspringgreen" & @CRLF & _
"mediumslateblue" & @CRLF & _
"mediumseagreen" & @CRLF & _
"mediumpurple" & @CRLF & _
"mediumorchid" & @CRLF & _
"mediumblue" & @CRLF & _
"mediumaquamarine" & @CRLF & _
"maroon" & @CRLF & _
"magenta" & @CRLF & _
"linen" & @CRLF & _
"limegreen" & @CRLF & _
"lime" & @CRLF & _
"lightyellow" & @CRLF & _
"lightsteelblue" & @CRLF & _
"lightslategrey" & @CRLF & _
"lightslategray" & @CRLF & _
"lightskyblue" & @CRLF & _
"lightseagreen" & @CRLF & _
"lightsalmon" & @CRLF & _
"lightpink" & @CRLF & _
"lightgrey" & @CRLF & _
"lightgreen" & @CRLF & _
"lightgray" & @CRLF & _
"lightgoldenrodyellow" & @CRLF & _
"lightcyan" & @CRLF & _
"lightcoral" & @CRLF & _
"lightblue" & @CRLF & _
"lemonchiffon" & @CRLF & _
"lawngreen" & @CRLF & _
"lavenderblush" & @CRLF & _
"lavender" & @CRLF & _
"khaki" & @CRLF & _
"ivory" & @CRLF & _
"indigo" & @CRLF & _
"indianred" & @CRLF & _
"hotpink" & @CRLF & _
"honeydew" & @CRLF & _
"grey" & @CRLF & _
"greenyellow" & @CRLF & _
"green" & @CRLF & _
"gray" & @CRLF & _
"goldenrod" & @CRLF & _
"gold" & @CRLF & _
"ghostwhite" & @CRLF & _
"gainsboro" & @CRLF & _
"fuchsia" & @CRLF & _
"forestgreen" & @CRLF & _
"floralwhite" & @CRLF & _
"firebrick" & @CRLF & _
"dodgerblue" & @CRLF & _
"dimgrey" & @CRLF & _
"dimgray" & @CRLF & _
"deepskyblue" & @CRLF & _
"deeppink" & @CRLF & _
"darkviolet" & @CRLF & _
"darkturquoise" & @CRLF & _
"darkslategrey" & @CRLF & _
"darkslategray" & @CRLF & _
"darkslateblue" & @CRLF & _
"darkseagreen" & @CRLF & _
"darksalmon" & @CRLF & _
"darkred" & @CRLF & _
"darkorchid" & @CRLF & _
"darkorange" & @CRLF & _
"darkolivegreen" & @CRLF & _
"darkmagenta" & @CRLF & _
"darkkhaki" & @CRLF & _
"darkgrey" & @CRLF & _
"darkgreen" & @CRLF & _
"darkgray" & @CRLF & _
"darkgoldenrod" & @CRLF & _
"darkcyan" & @CRLF & _
"darkblue" & @CRLF & _
"cyan" & @CRLF & _
"crimson" & @CRLF & _
"cornsilk" & @CRLF & _
"cornflowerblue" & @CRLF & _
"coral" & @CRLF & _
"chocolate" & @CRLF & _
"chartreuse" & @CRLF & _
"cadetblue" & @CRLF & _
"burlywood" & @CRLF & _
"brown" & @CRLF & _
"blueviolet" & @CRLF & _
"blue" & @CRLF & _
"blanchedalmond" & @CRLF & _
"black" & @CRLF & _
"bisque" & @CRLF & _
"beige" & @CRLF & _
"azure" & @CRLF & _
"aquamarine" & @CRLF & _
"aqua" & @CRLF & _
"antiquewhite" & @CRLF & _
"aliceblue" & @CRLF & _
"" & @CRLF & _
"Canvas" & @CRLF & _
"CanvasText" & @CRLF & _
"LinkText" & @CRLF & _
"VisitedText" & @CRLF & _
"ActiveText" & @CRLF & _
"ButtonFace" & @CRLF & _
"ButtonText" & @CRLF & _
"ButtonBorder" & @CRLF & _
"Field" & @CRLF & _
"FieldText" & @CRLF & _
"Highlight" & @CRLF & _
"HighlightText" & @CRLF & _
"SelectedItem" & @CRLF & _
"SelectedItemText" & @CRLF & _
"Mark" & @CRLF & _
"MarkText" & @CRLF & _
"GrayText" & @CRLF & _
"AccentColor" & @CRLF & _
"AccentColorText" & @CRLF & _
"" & @CRLF & _
"currentColor" & @CRLF & _
"" & @CRLF & _
"transparent" & @CRLF & _
""
Local $aArray = StringRegExp($sString, $sRegex, $STR_REGEXPARRAYGLOBALFULLMATCH)
Local $aFullArray[0]
For $i = 0 To UBound($aArray) -1
_ArrayConcatenate($aFullArray, $aArray[$i])
Next
$aArray = $aFullArray
; Present the entire match result
_ArrayDisplay($aArray, "Result")
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for AutoIt, please visit: https://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm