将字符串时间转换为正常时间值,将小时数替换为正确的

|| 我有以下示例字符串值:
24:05 , 25:08 , 26:59
我需要一个函数或其他东西来获取正确的时间值(hh:mm),例如:
00:05 , 01:08 , 02:59
C#中是否有执行此操作的方法? 请帮助我,我会为此而疯狂! 谢谢! 干杯.. 亚历山德罗     
已邀请:
        使用正则表达式,您可以这样做:
var match = Regex.Match(\"25:05\", @\"^(\\d{2,}):(\\d{2})$\");
var hour = int.Parse(match.Groups[1].Value) % 24;
var min = int.Parse(match.Groups[2].Value);

// hour will be 1 and min 5
如果您想避免使用正则表达式,则可以使用简单的
input.IndexOf()
input.SubString()
。 更新:如果您想要一种方法,请看一下:
static TimeSpan ParseHHMM(string input)
{
    var match = Regex.Match(input, @\"^(\\d{2,}):(\\d{2})$\");
    var hour = int.Parse(match.Groups[1].Value) % 24;
    var min = int.Parse(match.Groups[2].Value);

    return new TimeSpan(hour, min, 0);
}

// Write to console
Console.WriteLine(ParseHHMM(\"25:05\").ToString(@\"hh\\:mm\"));
更新:我将小时部分的ѭ6更改为ѭ7。这意味着它现在可以接受类似“ 8”的输入。     

要回复问题请先登录注册