使用 CL-PPCRE 綁定暫存器組
CL-PPCRE:REGISTER-GROUPS-BIND
將匹配正規表示式的字串,如果匹配,則將正規表示式中的暫存器組繫結到變數。如果字串不匹配,則返回 NIL
。
(defun parse-date-string (date-string)
(cl-ppcre:register-groups-bind
(year month day)
("(\\d{4})-(\\d{2})-(\\d{2})" date-string)
(list year month day)))
(parse-date-string "2016-07-23") ;=> ("2016" "07" "23")
(parse-date-string "foobar") ;=> NIL
(parse-date-string "2016-7-23") ;=> NIL