gpt4 book ai didi

c# - 验证 .NET 时间格式的正则表达式

转载 作者:太空宇宙 更新时间:2023-11-03 14:15:14 24 4
gpt4 key购买 nike

背景

我需要验证某些字段中的用户输入,这些字段定义了如何在某些 View 中显示时间。

要求

时间格式必须以 Microsoft .NET 方式表示(如果您想了解有关框架的日期和时间格式的更多信息,请查看此 MSDN 库文章:http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx)

请记住,我要验证的是格式,而不是实际时间字符串。

例如,用户可以输入:

  • 高:毫米
  • 时:分
  • ss
  • hh:ss
  • mm:ss
  • ...等等。

事实上,它应该从可用的最短时间格式到最长时间格式进行验证。

另一点是我需要在客户端使用 JavaScript 来完成。换句话说,您给出的任何正则表达式都应该在浏览器的 JavaScript 正则表达式引擎中工作。

我会感谢任何 self 定制的、任何链接或粘贴的表达!

提前谢谢你。

注意(更新)

我无法使用 ASP.NET 验证引擎或任何其他引擎。由于项目的要求,我需要避免这种情况。

最佳答案

据我所知,选项不多 - 最多 20 个。为什么不在一个没有太多特殊符号的大正则表达式中枚举它们呢?喜欢

'hh:mm|hh:mm:ss|yyyy-MM-dd hh:mm|<etc>'

您可以让它区分大小写,以区分 M 表示月份和 m 表示分钟,而对于小时则设为 [hH] ,然后将它设为 [:-/] ,您可以在其中允许使用不同的分隔符以及许多其他类似的东西。但主要思想是简单地枚举所有由 | 分隔的选项,在 || 之间使用少量正则表达式语法。

关于c# - 验证 .NET 时间格式的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6708082/

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