私がキャプチャしようとしている日付の形式は、単語が月に対応するパターン「単語/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
正規表現の並べ替えは問題ではありませんでした。むしろ、それは単語である月を数字で表した日と年を持つ正規表現構造に定式化するプロセスです。