日期的正则表达式模式

时间:2013-08-13 05:21:54

标签: regex boost-regex

我有以下字符串:

vitals.date_created==2013-7-3 11:23:32

我正在使用正则表达式

([a-zA-Z0-9_]+[$.]?[a-zA-Z0-9_]+)+[><=]=?[a-z0-9A-Z'\\.@- ]+

但正则表达式不起作用。

1 个答案:

答案 0 :(得分:0)

两件事:

  1. 您正在最后character class创建一个字符范围,但顺序错误(某些系统出错)

    ([a-zA-Z0-9_]+[$.]?[a-zA-Z0-9_]+)+[><=]=?[a-z0-9A-Z'\\.@- ]+
                                                           ^^^
    

    我假设你不想在这里使用一系列字符,所以要避开破折号或将其移到最后:

    ([a-zA-Z0-9_]+[$.]?[a-zA-Z0-9_]+)+[><=]=?[a-z0-9A-Z'\\.@ -]+
    
  2. 你的字符串中的时间有冒号,你的最后一个字符类没有。它应该如何匹配?只需将它们添加到课程中:

    ([a-zA-Z0-9_]+[$.]?[a-zA-Z0-9_]+)+[><=]=?[a-z0-9A-Z'\\.@: -]+
    
  3. 查看here on Regexr