using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"(\d+\.\d+\.\d+\.\d+).*\[(.+)\].*?""([A-Z]+)\s(\S+)\s(HTTP/\d+\.\d+).*?(\d+)\s(\d+).*?(\d+)}";
string input = @"{""resource"":{""attributes"":{}},""scope"":{""attributes"":{}},""logRecord"":{""attributes"":{""log.file.name"":""xxxx.log"",""log.file.path"":""X:\\xxx\\xxxx.log""},""body"":""1.1.1.1 - - [04/Mar/2023:23:16:59 +0000] \""HEAD /xxxx-xxxxx%20systematic%20internet%20solution_xxx-xxx.png HTTP/1.1\"" 200 1091 \""-\"" \""Mozilla/5.0 (Windows 95) AppleWebKit/5361 (KHTML, like Gecko) Chrome/36.0.849.0 Mobile Safari/5361\"",""observedTimeUnixNano"":1716203580594785300}}";
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