问题陈述:


有一个路径包含一个特定格式的日期,该日期是配置参数。说“ yyyy_MMM_d”,
我需要检测路径是否包含这样的日期:

如果是这样,请将其更改为新日期。
如果不是,请将新日期附加到路径中

路径中的现有日期可以是任何日期,并不总是昨天或明天。


尝试的解决方案:


通过正则表达式(在示例\d{4}_[a-zA-Z]{3}_\d{1,2}中)检测类似于日期的部分,然后使用TryParseExact()对其进行验证

这适用于恒定格式,但是当参数更改时,我需要写一种格式给regexp编译器以支持。这确实不值得付出努力。



那么,还有其他解决方案吗?我认为,如果没有比我更好的方法,我可能会在日期格式参数旁边要求使用正则表达式参数:-)

最佳答案

在斜杠定界符上分割字符串。在while循环中,进行检查以确定它是否为有效的datetime字符串。如果不是,请转到下一块。如果遍历每件作品,您将没有日期,因此请附加一个。

请注意,我不是.net开发人员,因此,这可能是一件可怕而令人讨厌的事情,永远都不会出现。

10-05 20:15
查看更多