如何获取日志属性使用正则表达式?

时间:2016-01-25 04:25:36

标签: c# regex

我在下面有几个日志信息,我想在C#中使用regex表达式。我要获取日期时间,线程,日志类型,模型,日志内容。

日志:

2015-12-07 01:54:03,401 [7] INFO MODEL1 - 日志内容(xxxxx)

谢谢和问候, 爱因斯坦

1 个答案:

答案 0 :(得分:1)

Regex logline = new Regex(@"^(?<date>\d{4}\-\d{2}\-\d{2} \d{2}:\d{2}:\d{2}).(?<thread>\d+) \[(?<logtype>\d+)\] Log content\((?<content>.*)\)$");

Match m = logline.Match(input);

if (m.Success)
{
    DateTime time = DateTime.Parse(m.Groups["date"].Value);
    int thread = Convert.ToInt32(m.Groups["thread"].Value);
    int logType = Convert.ToInt32(m.Groups["logType"].Value);
    var logContent = m.Groups["content"].Value;
}