gpt4 book ai didi

c# - 验证 hh :mm:ss

转载 作者:行者123 更新时间:2023-11-30 18:51:39 24 4
gpt4 key购买 nike

我是 C#.net 的新手。我想要对仅采用 hh:mm:ss 格式的文本框进行验证。下面是我的代码及其工作原理。它给出的输出为 true 23:45:45(仅作为示例),对于 -23:45:45 也为 true(仅作为示例)。现在我想要为 -23:45:45(仅示例)返回 false 的验证,因为它是负时间。我的运行代码不适用于负时间。

          IsTrue = ValidateTime(txtTime.Text);
if (!IsTrue)
{

strErrorMsg += "\nPlease insert valid alpha time in hh:mm:ss formats";
isValidate = false;
}

public bool ValidateTime(string time)
{
try
{
Regex regExp = new Regex(@"(([0-1][0-9])|([2][0-3])):([0-5][0-9]):([0-5][0-9])");

return regExp.IsMatch(time);
}
catch (Exception ex)
{

throw ex;
}
}

最佳答案

我根本不会使用正则表达式 - 我只是尝试将结果解析为具有自定义格式的 DateTime:

public bool ValidateTime(string time)
{
DateTime ignored;
return DateTime.TryParseExact(time, "HH:mm:ss",
CultureInfo.InvariantCulture,
DateTimeStyles.None,
out ignored);
}

(如果您真的想要坚持使用正则表达式,请遵循 Mels 的回答。我会摆脱无意义的 try/catch block ,并且可能只构造一次正则表达式并重复使用它也是。)

关于c# - 验证 hh :mm:ss,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16393891/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com