Provided by: tcl8.4-doc_8.4.20-8_all bug

NAME

       lreplace - Replace elements in a list with new elements

SYNOPSIS

       lreplace list first last ?element element ...?
_________________________________________________________________

DESCRIPTION

       lreplace  returns  a  new  list  formed by replacing one or more elements of list with the
       element arguments.  first and last specify the first  and  last  index  of  the  range  of
       elements  to  replace.   0  refers  to  the  first  element  of  the list, and end (or any
       abbreviation of it) may be used to refer to the last element of  the  list.   If  list  is
       empty, then first and last are ignored.

       If  first  is  less than zero, it is considered to refer to the first element of the list.
       For non-empty lists, the element indicated by first must exist.

       If last is less than zero but greater than first, then  any  specified  elements  will  be
       prepended  to  the list.  If last is less than first then no elements are deleted; the new
       elements are simply inserted before first.

       The element arguments specify zero or more new arguments to be added to the list in  place
       of  those  that were deleted.  Each element argument will become a separate element of the
       list.  If no element arguments are specified, then the elements between first and last are
       simply deleted.  If list is empty, any element arguments are added to the end of the list.

EXAMPLES

       Replacing an element of a list with another:
              % lreplace {a b c d e} 1 1 foo
              a foo c d e

       Replacing two elements of a list with three:
              % lreplace {a b c d e} 1 2 three more elements
              a three more elements d e

       Deleting the last element from a list in a variable:
              % set var {a b c d e}
              a b c d e
              % set var [lreplace $var end end]
              a b c d

SEE ALSO

       list(3tcl),  lappend(3tcl),  lindex(3tcl),  linsert(3tcl),  llength(3tcl),  lsearch(3tcl), │
       lset(3tcl), lrange(3tcl), lsort(3tcl)

KEYWORDS

       element, list, replace