解析异常日期运行列表
本文关键字:DateTime 列表 运行 异常 日期 | 更新日期: 2023-09-27 18:15:08
如果我有一个包含缩写Short Month和逗号分隔日期的字符串,如:
Jul 23, 30 , Aug 06, 13, 20, 27
or
Jul 1, 15, 30 , Aug 14, 26 ,
将其转换为日期时间列表的优雅方法是什么?
您可以使用正则表达式和Linq:
var input = "Jul 23, 30 , Aug 06, 13, 20, 27";
var dates =
(from Match m in Regex.Matches(input, @"('w+)(?:['s,]+('d+))+")
from Capture c in m.Groups[2].Captures
let str = m.Groups[1].Value + " " + c.Value
select DateTime.ParseExact(str, "MMM dd", null))
.ToList();
请注意,如果存在无效日期,则会抛出错误。