common-lisp                
            Vanliga uttryck
        
        
            
    Sök…
Använd med mönster matchning för att binda fångade grupper
 Mönstermatchning bibliotek trivia ger ett system trivia.ppcre som gör att fångade grupper kan bindas genom mönster matchning 
(trivia:match "John Doe"
  ((trivia.ppcre:ppcre "(.*)\\W+(.*)" first-name last-name)
   (list :first-name first-name :last-name last-name)))
;; => (:FIRST-NAME "John" :LAST-NAME "Doe")
-  Obs: biblioteket Optima erbjuder en liknande anläggning i systemet optima.ppcre
Bindande registergrupper med CL-PPCRE
 CL-PPCRE:REGISTER-GROUPS-BIND matchar en sträng mot ett regelbundet uttryck, och om det matchar, binda registergrupper i regex till variabler. Om strängen inte matchar, returneras 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
Modified text is an extract of the original Stack Overflow Documentation
        Licensierat under CC BY-SA 3.0
        Inte anslutet till Stack Overflow