using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"^(?:export\s+|)(?<key>[[:alnum:]_]+)=((?<quote>[""'])?(?<val>.*?[^\\])\k<quote>?|)$";
string input = @"DOT_ENV=dotenv
#DOTENV=dotenv
DOT_ENV= asdf asf
DOTENV='dot env'
DOTENV=""dot env""
DOT_ENV='dotenv'
DOT_ENV=""DotEnv""
DOTENV=""Dot\nEnv""
DOTENV=""{""Dot"":""Env""}""
export DOTENV=""dotenv""
DOTENV =""dot env""
DOTENV= ""dot env""
DOTENV = ""dot env""";
RegexOptions options = RegexOptions.Multiline;
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