Gnocl Cookbook‎ > ‎

    Comparing Two Lists

    A simple proc to compare the contents of two lists. It returns a list equal to the differences.


    #----------------
    # compare list a with b
    #----------------

    proc listcomp {a b} {
        
        set diff {}

        foreach i $a {

            if { [lsearch -exact $b $i]==-1} {
                lappend diff $i
            }


        }
        return $diff
    }

    set a {1 2 3 4 5 6}
    set b {2 4 6 8}


    puts "list a = \{$a\}\nlist b = \{$b\}\nThe difference between a and b is \{[listcomp $a $b]\}."

    Sections