using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"((?:#|0x)(?:[a-f0-9]{3}|[a-f0-9]{6})\b|(?:rgb|hsl)a?\([^\)]*\))";
string input = @"yo #5E81AC and there rgb(50, 186, 86) or even #1364e7 and rgb(242, 48, 84)
style=\""color: rgb(255,0,24)\""
style=\""color: rgb(255, 0, 24)\""
style=\""color: rgba(255, 0, 24, .5)\""
style=\""color: hsla(170, 23%, 25%, 0.2 )\""
style=\""color: #fff\""
style=\""color: #f2ewq\"" this isn\'t a color
style=\""color: #F2F2F2\""
style=\""color: 0x00ffff\"" This is a color with the `#` escaped";
RegexOptions options = RegexOptions.CultureInvariant | RegexOptions.IgnoreCase;
foreach (Match m in Regex.Matches(input, pattern, options))
{
Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
}
}
}
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 C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx