【发布时间】:2016-11-02 04:49:47
【问题描述】:
简而言之,我要做的是使以下测试成功
[TestMethod]
public void DateTimeFormatTest()
{
string text = "jose23 (11/1/2016 11:27pm, 8 posts)";
var matches = BoardScanner.DateTimeFormat.Matches(text);
Assert.AreEqual(matches.Count, 1, String.Format("Couldn't extract date from {0} using DateTimeFormat", text));
var match = matches[0];
try
{
DateTime.Parse(match.Value);
}
catch(FormatException)
{
Assert.Fail("Couldn't convert {0} to DateTime object", match.Value);
}
}
我使用的正则表达式是
new Regex(@"\d{2,2}/\d{2,2}/\d{4,4} \d{2,2}:\d{2,2}/^(am|pm|AM|PM)")
显然不工作
【问题讨论】:
-
如果模式始终相同,
string dtprt = text.Split('(')[1].ToString().Split(',')[0].ToString();也可以提取您的日期。比如日期总是在(和,之间