split-sequence

API Reference

split-sequence

Splits a sequence into a list of subsequences delimited by objects satisfying a test.

SPLIT-SEQUENCE

  • Function SPLIT-SEQUENCE (delimiter sequence &key (start 0) (end nil) (from-end nil) (count nil) (remove-empty-subseqs nil) (test #'eql) (test-not nil) (key #'identity))
    Return a list of subsequences in seq delimited by delimiter. If :remove-empty-subseqs is NIL, empty subsequences will be included in the result; otherwise they will be discarded. All other keywords work analogously to those for CL:SUBSTITUTE. In particular, the behaviour of :from-end is possibly different from other versions of this function; :from-end values of NIL and T are equivalent unless :count is supplied. The second return value is an index suitable as an argument to CL:SUBSEQ into the sequence indicating where processing stopped.
  • Function SPLIT-SEQUENCE-IF (predicate sequence &key (start 0) (end nil) (from-end nil) (count nil) (remove-empty-subseqs nil) (key #'identity))
    Return a list of subsequences in seq delimited by items satisfying predicate. If :remove-empty-subseqs is NIL, empty subsequences will be included in the result; otherwise they will be discarded. All other keywords work analogously to those for CL:SUBSTITUTE-IF. In particular, the behaviour of :from-end is possibly different from other versions of this function; :from-end values of NIL and T are equivalent unless :count is supplied. The second return value is an index suitable as an argument to CL:SUBSEQ into the sequence indicating where processing stopped.
  • Function SPLIT-SEQUENCE-IF-NOT (predicate sequence &key (count nil) (remove-empty-subseqs nil) (from-end nil) (start 0) (end nil) (key #'identity))
    Return a list of subsequences in seq delimited by items satisfying (CL:COMPLEMENT predicate). If :remove-empty-subseqs is NIL, empty subsequences will be included in the result; otherwise they will be discarded. All other keywords work analogously to those for CL:SUBSTITUTE-IF-NOT. In particular, the behaviour of :from-end is possibly different from other versions of this function; :from-end values of NIL and T are equivalent unless :count is supplied. The second return value is an index suitable as an argument to CL:SUBSEQ into the sequence indicating where processing stopped.