using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"([\w-]+?)=("".*?""|\S+)";
string input = @"appName=XXX clientIp=X.X.X timestamp=""2017-06-05T13:22:12-07:00"" request=""POST /forward HTTP/1.1"" statusCode=204 bytesOut=1167 totalTime=0.062 bytesIn=1289 sourceHost=XXXX connId=49936598 connReqs=9 upInstance=XXX:104:XXX-XXX:8664:17F34 upConnectSec=0.052 upAddr=""XX.XX.XX:123"" upHost=""vcv08it-cvcv2801:8464"" upHdrTimeSec=0.058 upRespTimeSec=0.058 pid=32561 upStatusCode=204 message=""Access Log"" corrKey=GMIFCDIKRZR2T4VZQXJA2IT6 upCached=- length=0 partition=XXX location=""= /v1/tXXXX"" xff=""XX.XX.XX.XX"" referer=""-"" user-agent=""Apache-HttpAsyncClient/4.1.1 (Java/1.8.0_131)\"" rateLimitCurrentValues=""--"" rateLimitTimeMs=\""-:-""
";
foreach (Match m in Regex.Matches(input, pattern))
{
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