(defun all-matches-dammit (scanner target-string) (iterate (with i = 0) (for (values start end) = (ppcre:scan scanner target-string :start i)) (while start) (collect start) (collect end) (setf i (1+ start))))