【发布时间】:2013-07-05 06:07:39
【问题描述】:
给定一个日期时间格式字符串,是否有一种标准方法可以找到与该格式匹配的第一个匹配子字符串?
例如,给定...
d-MMM-yy H:mm:ss
还有一些文字...
"blah 1 2 3 7-Jul-13 6:15:00 4 5 6 blah"
我希望它会返回
"7-Jul-13 6:15:00"
现在我可以通过解析找到这个字符串,但我想知道是否有任何库支持这样做?
【问题讨论】:
-
它可能不是,但是,它确实意味着如果您想找到与日期时间格式匹配的字符串,您必须至少部分重新发明内置的格式约定。
-
@KeithNicholas 我不认为有一个库可以做到这一点,但你肯定可以尝试正则表达式
(\d{,2}-\w{3}-\d{,4}\s\d{,2}:\d{,2}:\d{,2}),我相信这将是这里的方式,或者你可以尝试拆分您拥有和使用索引的术语 -
@Prix 我只举了一个例子,但问题确实询问了日期时间格式字符串,它可以是任何有效的日期时间格式字符串。
-
@KeithNicholas 以您的示例和模式为例,例如 7 月 17 日会失败,2013 年也会失败,所以如果您有一组给定的可能性,您还可以制作一组您可以使用的正则表达式.
-
@Prix, 17 将通过,因为 'd' 表示 1 或 2 位数字,如果是 dd 则必须是 07-Jul... 假设您事先不知道哪个日期时间你得到的格式字符串。它是在运行时给出的。只要它的格式字符串有效。
标签: c# .net datetime-format datetime-parsing