【发布时间】:2010-05-10 07:56:19
【问题描述】:
我想从字符串中解析日期,其中日期格式可以是任何不同的格式。
现在要匹配日期,我们可以使用DateTime.TryParseExact,我们可以根据需要定义格式,并且日期将匹配任何不同的格式。
string[] formats = {"MMM dd yyyy"};
DateTime dateValue;
string dateString = "May 26 2008";
if (DateTime.TryParseExact(dateString, formats,
new CultureInfo("en-US"),
DateTimeStyles.None,
out dateValue))
MessageBox.Show(dateValue.ToString());
这与日期匹配。但这不适用于从与某些字符串中的日期不匹配的字符串中解析日期。
喜欢
如果日期是"May 26 2008",那么我们可以定义格式"MMM dd yyyy",并且日期将被匹配。
但是如果日期在"Abc May 26 2008"这样的字符串中,那么日期将不会被匹配。那么我们可以在这里使用正则表达式吗?如果是怎么办?
我要解析日期的字符串,是从html页面解析出来的,字符串可以不一样。
编辑:我想使用正则表达式编写与任何有日期的字符串匹配的格式。
【问题讨论】:
-
日期在字符串中的位置是否固定(比如在末尾或在某个字符数处)?
-
不,不是,日期可以在字符串中的任何位置,实际上我正在从 html 页面解析字符串,然后检查字符串中是否有日期,如果是,然后从字符串中解析日期。