正则表达式匹配"时间"字符串中的值

时间:2015-05-22 17:03:14

标签: c# regex

我试图将字符串中的几个模式与正则表达式匹配添加分隔符并将它们添加到字符串或列表中。描述是我试图测试的字符串。

这是我试图匹配的文字" 01:00 02:00 03:00" 之前的尝试我能够匹配" 01:00",但我希望匹配所有3个案例。

public ActionResult planviewCreate(PlanObjectsViewModel model)
{
    // some code here
    return View();
}

2 个答案:

答案 0 :(得分:4)

您必须为此目的移除锚点^$

var pattern = @"(?:(?:([01]?\d|2[0-3]):)?([0-5]?\d):)?([0-5]?\d)";
               ^                                                ^

请参阅DEMO

答案 1 :(得分:0)

(0[0-9]|1[1-2]):[0-5][0-9](?=[^0-9])

将匹配标准时间(Link),而

([0-1][0-9]|2[0-3]):[0-5][0-9](?=[^0-9])

将匹配军事时间(Link)。