• 时间的正则表达式(比较简单)


       正则1种:    ([0-1]?[0-9]|2[0-9]):([0-5][0-9]):([0-5][0-9])         可以匹配 23:59:59,    可是当 数据为34:59:59 却也一样的能通过。(不够完善)

       正则2种:   测试 暂是通过 能比较完美的匹配时间的正则:([0-1][0-9]|2[0-3]|^[0-9]):([0-5]?[0-9]):([0-5]?[0-9])    当情况为3:4:7这样的时间格式也能通过,且分别得到时 分 秒

    下面为 2种 做下解释:

    ([0-1][0-9]|2[0-3]|^[0-9]):([0-5]?[0-9]):([0-5]?[0-9]) 为什么能匹配3:4:7 是因为([0-5]?[0-9])之间的? 

    当?字符紧跟在任何一个其他限制符 (*, +, ?, {n}, {n,}, {n,m}) 后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串 "oooo",'o+?' 将匹配单个 "o",而 'o+' 将匹配所有 'o'。  现在?跟在[0-5] ,所以是非贪婪的 那么他可以匹配0 也可以不匹配0.这个就根据自己的需求。 所以你只要把?去掉分秒就必须匹配09不会出现匹配9这种情况了.  /^([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/ 前面这个[0-1][0-9]|2[0-3] 是用来匹配01-09  11-19 20-23的字符串。

      JS 代码实现:   1.//日期格式为:YYYY|MM|DD|hh|ss.    例如:2010|04|09|12|25       {0:yyyy-MM-dd HH:ss}

                2. var pattern = /^(?:20\d{2})\|(?:0[1-9]|1[0-2])\|(?:0[1-9]|[12][0-9]|3[01])\|(?:0[0-9]|1[0-9]|2[0-3])\|(?:[0-5]\d)$/;

      分钟转换小时:例如 new TimeSpan(0,Convert.ToInt32(Eval("数据源(分钟数)")),0).TotalHours.ToString("F2")

  • 相关阅读:
    Zookeeper服务器启动
    BeanFactoryPostProcessor
    ZK简介
    自定义标签解析
    高性能MySQL
    Redis原理
    ApplicationContext
    ThreadPoolExecutor
    NW.js构建PC收银端安装程序的指南
    NW.js安装原生node模块node-printer控制打印机
  • 原文地址:https://www.cnblogs.com/zhangxp1129/p/2590272.html
Copyright © 2020-2023  润新知