lrange - Return one or more adjacent elements from a list


lrange list first last


List must be a valid Tcl list. This command will return a new list consisting of elements first through last, inclusive. First or last may be end (or any abbreviation of it) to refer to the last element of the list. If first is less than zero, it is treated as if it were zero. If last is greater than or equal to the number of elements in the list, then it is treated as if it were end. If first is greater than last then an empty string is returned. Note: ``lrange list first first'' does not always produce the same result as ``lindex list first'' (although it often does for simple fields that aren't enclosed in braces); it does, however, produce exactly the same results as ``list [lindex list first]''


Selecting the first two elements:
% lrange {a b c d e} 0 1
a b

Selecting the last three elements:

% lrange {a b c d e} end-2 end
c d e

Selecting everything except the first and last element:

% lrange {a b c d e} 1 end-1
b c d

Selecting a single element with lrange is not the same as doing so with lindex:

% set var {some {elements to} select}
some {elements to} select
% lindex $var 1
elements to
% lrange $var 1 1
{elements to}


list, lappend, lindex, linsert, llength, lsearch, lset, lreplace, lsort


element, list, range, sublist
Copyright © 1993 The Regents of the University of California.
Copyright © 1994-1996 Sun Microsystems, Inc.
Copyright © 2001 Kevin B. Kenny. All rights reserved.
Copyright © 1995-1997 Roger E. Critchlow Jr.