Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
lreplace(n)		     Tcl Built-In Commands		   lreplace(n)


       lreplace	- Replace elements in a	list with new elements

       lreplace	list first last	?element element ...?

       lreplace	returns	a new list formed by replacing one or more elements of
       list with the element arguments.	 first and last	are index values spec- |
       ifying  the first and last elements of the range	to replace.  The index |
       values first and	last are interpreted the same as index values for  the |
       command	string	index,	supporting simple index	arithmetic and indices |
       relative	to the end of the list.	 0 refers to the first element of  the |
       list,  and  end	refers	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  before  the
       first  element of the list.  For	non-empty lists, the element indicated
       by first	must exist or first must indicate  before  the	start  of  the

       If  last	 is  less  than	first, then any	specified elements will	be in-
       serted into the list at the point specified by first with  no  elements
       being deleted.

       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.

       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

       A procedure to delete a given element from a list:
	      proc lremove {listVariable value}	{
		  upvar	1 $listVariable	var
		  set idx [lsearch -exact $var $value]
		  set var [lreplace $var $idx $idx]

       list(n),	lappend(n),  lindex(n),	 linsert(n),  llength(n),  lsearch(n),
       lset(n),	lrange(n), lsort(n), string(n)				       |

       element,	list, replace

Tcl				      7.4			   lreplace(n)


Want to link to this manual page? Use this URL:

home | help