使用正则表达式进行时间戳验证.jQuery UI

Timestamp validation with regex. jQuery UI

本文关键字:验证 jQuery UI 时间戳 正则表达式      更新时间:2023-09-26

我的目标是使用正则表达式通过Javascript和jQuery UI验证时间戳(格式:mm/dd/yy h:mmt,例如04/25/2014 11:39a

/^(0[1-9]|1[012])[- '/.](0[1-9]|[12][0-9]|3[01])[- '/.](19|20)'d'd[ ]([1-9]|1[0-2])[:]([0-5][0-9])(a|p)$/

我的regex语句适用于以下两个站点上的格式化时间戳:

  1. Rubular
  2. regexpal

然而,当我在小部件工厂中使用带有regexMatch的valid选项时,它不会将时间戳识别为有效值。

这是我的小部件的对象文字:

widgetName: 'field',
  widgetOptions: {
    label:    'From',
    code:     'fromFilterValue',
    width: 160,
    required:  true,
    valid: { 
      regexpMatch: [
                    '/^(0[1-9]|1[012])[- '/.](0[1-9]|[12][0-9]|3[01])[- '/.](19|20)'d'd[ ]([1-9]|1[0-2])[:]([0-5][0-9])(a|p)$/',
                    { field: '_newValue' }
                  ]
                }
  }

我的小部件抱怨所有数字的'd语法。我用[0-9]替换了所有的'd,效果很好。

有人能解释一下'd为什么不起作用吗?