r11723: new release
[kmrcl.git] / strings.lisp
index 166c5fa28bec6e30ff68dd0083f8ab583f6bc8ec..bc5f4bde8c178e0ae257d025dc12509bdfa9da1f 100644 (file)
@@ -496,6 +496,13 @@ for characters in a string"
        (setf (schar str dpos) ch)))))
 
 
+(defun uri-query-to-alist (query)
+  "Converts non-decoded URI query to an alist of settings"
+  (mapcar (lambda (set)
+            (let ((lst (kmrcl:delimited-string-to-list set #\=)))
+              (cons (first lst) (second lst))))
+          (kmrcl:delimited-string-to-list
+           (kmrcl:decode-uri-string query) #\&)))
 
 (eval-when (:compile-toplevel :load-toplevel :execute)
   (defvar +unambiguous-charset+