我有一个包含许多项目的字符串列表,其中一些以以下格式的日期/时间开头:
2016-05-04 18:46:05.115 Copyright (c) 2014 Microsoft Corporation
我希望遍历并从列表中包含该格式的所有项目中删除该日期/时间。
目前我有这个:
var regexDateTime = "/^(\\d{4})-(\\d{2})-(\\d{2}) (\\d{2}):(\\d{2}):(\\d{2})$/";
preperationMessages = preperationMessages
.Select(x => Regex.Replace(x, regexDateTime, ""))
.ToList();
它根本没有过滤掉任何日期。任何帮助,将不胜感激。谢谢!
最佳答案
使用这个正则表达式:
var regex = @"^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})\.(\d{3})";
您的正则表达式的问题是末尾的“$”,它表示字符串结尾,这不是您想要的。另一件事是,您不会像在 javascript 中那样在 csharp 中的正则表达式的开头和结尾使用斜杠。
关于C# 正则表达式模式删除列表中的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37077622/