gpt4 book ai didi

regex - 如何使用正则表达式在日志文件中查找日期时间模式

转载 作者:行者123 更新时间:2023-12-04 22:04:23 27 4
gpt4 key购买 nike

所有,
我对正则表达式不太满意,并试图找到合适的工具来测试它,我使用正则表达式在线测试器,但似乎并没有得到:

问题:我有以下带有时间戳的日志文件:
示例:1/27/2012 10:47:50 AM : 0 : ContextManager.Initialize : 0 : Context Manager Initialization Started.

我正在寻找一个正则表达式,它将通过日志文件查找并找到上面列出的日期格式(如果找到的话),我将另外检查我已经在做的事情。我只需要获取正则表达式即可匹配上面提到的以下内容。

这是到目前为止我得到的关于模式的信息:

@"\d{2,2}/\d{2,2}/\d{4,4} \d{2,2}:\d{2,2}:\d{2,2}";  


主要代码:.net c#

public void ValidateErrorHandlingMessagesInLogFile()
{
System.Diagnostics.Debugger.Launch();
//@"\d{2,2}/\d{2,2}/\d{4,4} \d{2,2}:\d{2,2}:\d{2,2}"
//^(19|20)\d\d[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])$
string Pattern = @"\d{2,2}/\d{2,2}/\d{4,4} \d{2,2}:\d{2,2}:\d{2,2}";
ValidateUsingRegularExpression(Pattern, "engine");
}


错误日志:

1/27/2012 10:47:50 AM : 0 : ContextManager.Initialize : 0 : Context Manager Initialization Started. 
1/27/2012 10:47:59 AM : 0 : RuleEngine:538 : 4 : History definition configuration failure. Update history_definition config parameter to resolve errors reported. history definition configuration failure - Unknown field name [Lie_DosFrom] in entry [MEM_DOS]

最佳答案

我建议您更改reg模式,如下所示:

@"\d{1,2}/\d{1,2}/\d{4,4} \d{2}:\d{2}:\d{2}";


也就是说,有时日期/月份仅包含1位数字,而您的原始模式并未指出这一点。

通常,修饰符 {m,n}表示此模式至少出现 m次,最多出现 n次。而 {m}{m,m}表示此模式恰好出现 m次。

关于regex - 如何使用正则表达式在日志文件中查找日期时间模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9037809/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com