lsearch.n
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:5k
- '"
- '" Copyright (c) 1993 The Regents of the University of California.
- '" Copyright (c) 1994-1996 Sun Microsystems, Inc.
- '" Copyright (c) 2001 Kevin B. Kenny. All rights reserved.
- '"
- '" See the file "license.terms" for information on usage and redistribution
- '" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
- '"
- '" RCS: @(#) $Id: lsearch.n,v 1.13.2.4 2005/01/05 21:53:30 dkf Exp $
- '"
- .so man.macros
- .TH lsearch n 8.4 Tcl "Tcl Built-In Commands"
- .BS
- '" Note: do not modify the .SH NAME line immediately below!
- .SH NAME
- lsearch - See if a list contains a particular element
- .SH SYNOPSIS
- fBlsearch fR?fIoptionsfR? fIlist patternfR
- .BE
- .SH DESCRIPTION
- .PP
- This command searches the elements of fIlistfR to see if one
- of them matches fIpatternfR. If so, the command returns the index
- of the first matching element
- .VS 8.4
- (unless the options fB-allfR or fB-inlinefR are specified.)
- .VE 8.4
- If not, the command returns fB-1fR. The fIoptionfR arguments
- indicates how the elements of the list are to be matched against
- fIpatternfR and it must have one of the following values:
- .TP
- fB-allfR
- .VS 8.4
- Changes the result to be the list of all matching indices (or all
- matching values if fB-inlinefR is specified as well.)
- .VE 8.4
- .TP
- fB-asciifR
- The list elements are to be examined as Unicode strings (the name is
- for backward-compatability reasons.) This option is only meaningful
- when used with fB-exactfR or fB-sortedfR.
- .TP
- fB-decreasingfR
- The list elements are sorted in decreasing order. This option is only
- meaningful when used with fB-sortedfR.
- .TP
- fB-dictionaryfR
- The list elements are to be compared using dictionary-style
- comparisons (see fBlsortfR for a fuller description). This option
- is only meaningful when used with fB-exactfR or fB-sortedfR, and
- it is only distinguishable from the fB-asciifR option when
- the fB-sortedfR option is given, because values are only
- dictionary-equal when exactly equal.
- .TP
- fB-exactfR
- The list element must contain exactly the same string as fIpatternfR.
- .TP
- fB-globfR
- fIPatternfR is a glob-style pattern which is matched against each list
- element using the same rules as the fBstring matchfR command.
- .TP
- fB-increasingfR
- The list elements are sorted in increasing order. This option is only
- meaningful when used with fB-sortedfR.
- .TP
- fB-inlinefR
- .VS 8.4
- The matching value is returned instead of its index (or an empty
- string if no value matches.) If fB-allfR is also specified, then
- the result of the command is the list of all values that matched.
- .VE 8.4
- .TP
- fB-integerfR
- The list elements are to be compared as integers. This option is only
- meaningful when used with fB-exactfR or fB-sortedfR.
- .TP
- fB-notfR
- .VS 8.4
- This negates the sense of the match, returning the index of the first
- non-matching value in the list.
- .VE 8.4
- .TP
- fB-realfR
- The list elements are to be compared as floating-point values. This
- option is only meaningful when used with fB-exactfR or fB-sortedfR.
- .TP
- fB-regexpfR
- fIPatternfR is treated as a regular expression and matched against
- each list element using the rules described in the fBre_syntaxfR
- reference page.
- .TP
- fB-sortedfR
- The list elements are in sorted order. If this option is specified,
- fBlsearchfR will use a more efficient searching algorithm to search
- fIlistfR. If no other options are specified, fIlistfR is assumed
- to be sorted in increasing order, and to contain ASCII strings. This
- option is mutually exclusive with fB-globfR and fB-regexpfR, and
- is treated exactly like fB-exactfR when either fB-allfR, or
- fB-notfR is specified.
- .TP
- fB-startfR fIindexfR
- .VS 8.4
- The list is searched starting at position fIindexfR. If fIindexfR
- has the value fBendfR, it refers to the last element in the list,
- and fBend-fIintegerfR refers to the last element in the list minus
- the specified integer offset.
- .VE 8.4
- .PP
- If fIoptionfR is omitted then it defaults to fB-globfR. If more
- than one of fB-exactfR, fB-globfR, fB-regexpfR, and
- fB-sortedfR is specified, whichever option is specified last takes
- precedence. If more than one of fB-asciifR, fB-dictionaryfR,
- fB-integerfR and fB-realfR is specified, the option specified
- last takes precedence. If more than one of fB-increasingfR and
- fB-decreasingfR is specified, the option specified last takes
- precedence.
- .VS 8.4
- .SH EXAMPLES
- .CS
- fBlsearchfR {a b c d e} c fI=> 2fR
- fBlsearchfR -all {a b c a b c} c fI=> 2 5fR
- fBlsearchfR -inline {a20 b35 c47} b* fI=> b35fR
- fBlsearchfR -inline -not {a20 b35 c47} b* fI=> a20fR
- fBlsearchfR -all -inline -not {a20 b35 c47} b* fI=> a20 c47fR
- fBlsearchfR -all -not {a20 b35 c47} b* fI=> 0 2fR
- fBlsearchfR -start 3 {a b c a b c} c fI=> 5fR
- .CE
- .VE 8.4
- .SH "SEE ALSO"
- .VS 8.4
- foreach(n), list(n), lappend(n), lindex(n), linsert(n), llength(n),
- lset(n), lsort(n), lrange(n), lreplace(n)
- .VE
- .SH KEYWORDS
- list, match, pattern, regular expression, search, string
- '" Local Variables:
- '" mode: nroff
- '" End: