Tcl Source Code

View Ticket
Login
Ticket UUID: 684433
Title: lsearch multiple pattern matching
Type: RFE Created on: 2003-02-11 07:51:51
Submitter: nobody Assigned to: dkf
Subsystem: 17. Commands I-L Severity:
Priority: 5 Medium Last modified: 2003-02-11 07:51:51
Status: Open Closed by:
Resolution: None Closed on:
Version: None
Description:
The glob command can accept many pattern arguments 
but the lsearch do not. As it is often interesting to 
search lists for several elements, this feature could be 
powerful:

lsearch ?switches? list pattern ?pattern...?

This syntax is totally compatible with the current lsearch 
command. It would provide a smart replacement for:

set newList {}
foreach pattern patternList {
   set result [lsearch ?switches? $list $pattern]
   set newList [concat $newList $pattern]
}

It would then be possible to easily find the common 
elements of 2 lists:

eval lsearch -all -inline [list $list1] $list2

or to delete list elements that are already in the second 
list:

eval lsearch -all -not -inline [list $list1] $list2


JM. Philippe