【发布时间】:2014-01-31 07:06:23
【问题描述】:
我希望捕获的日期格式属于“word/DD/YYYY”模式的排列,其中单词对应于月份,即
(def months ["january" "January" "february" "February" "march" "March" "April" "april" "may" "May" "june" "June" "july" "July" "august" "August" "september" "September" "october" "October" "november" "November" "december" "December"])
因此,上述模式的可能排列将是“DD/word/YYYY”、“YYYY/word/DD”和“YYYY/DD/word”
我尝试了一些类似
的方法(def months-match (clojure.string/join "|" months))
(def months-str (str "(\\s*(" months-match ")"))
(def moster (re-pattern months-str))
(defn foomonths [s]
(map first (re-seq moster s)))
计划添加几天和几年的正则表达式
|[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d
置换正则表达式不是问题。相反,它是将作为单词的月份形成正则表达式结构的过程,其中日期和年份为数字。
【问题讨论】:
标签: regex clojure clojure-contrib