我有以下日期字符串格式,取自大型数据集:
Wed Oct 05 19:26:09 BST 2014
我需要提取15th October 09:00
和23rd October 11:00
我目前有这个正则表达式:(Oct\W\d\d\W\d\d\W\d\d\W\d\d)
匹配:Oct 05 19:26:09
我怎样才能改变它以匹配我指定的日期和时间范围?
答案 0 :(得分:2)
我认为尝试使用单一正则表达式找到一系列日期是一种很好的方法 - 将来很难改变和重用。用你编程语言中的变量提取每月的天数是不是更好?那么处理比较将是微不足道的。当然这取决于你的问题的背景
答案 1 :(得分:2)
好@Maciej Baranowski说..你不应该用RegExp这样做。但是,万一你必须,并且没有其他选择..这是该条件的正则表达式:
编辑:基于OP评论的新答案。仅匹配10月15日至23日和9:00:00至11:00:00之间的日期
#Oct\W(?:1[5-9]|2[0-3])\W(?:(?:0?9|10):\d{2}:\d{2}|11:00:00)#
您可以看到它有效here