Finding the non-matching values collection/array

Discussion in 'ASP General' started by Robb Meade, Jun 29, 2003.

  1. Robb Meade

    Robb Meade Guest

    Hi all,

    Ok, lets say I have the following,

    Request.Form collection which produces this (as the element names)

    a
    b
    c
    d
    e
    f

    And I also have an array containg this

    a
    b
    c

    What I want to do is loop through both and response.write to the screen only
    the items that are not the same, so in this case I would see

    d
    e
    f

    displayed on the screen, I've tried a couple of things but its not working,
    has anyone got any suggestions...

    Cheers

    Robb
     
    Robb Meade, Jun 29, 2003
    #1
    1. Advertising

  2. Robb Meade

    Robb Meade Guest

    anyone got any ideas with this? I really could do with some help please :eek:)

    Robb
     
    Robb Meade, Jun 29, 2003
    #2
    1. Advertising

  3. Robb Meade

    Robb Meade Guest

    Sorted it now...

    for i = 0 to ubound(ARR2)
    found = "false"
    for j = 0 to ubound(ARR1)
    if (ARR2(i) = ARR1(j)) then
    found = "true"
    exit for
    end if
    next
    if found ="false" then
    strOutput=strOutput & ARR2(i) & ","
    ARR2temp = ARR2(i)
    end if
    next
     
    Robb Meade, Jun 29, 2003
    #3
  4. Robb Meade

    Evertjan. Guest

    Re: Sorted it now...

    Robb Meade wrote on 29 jun 2003 in
    microsoft.public.inetserver.asp.general:
    > for i = 0 to ubound(ARR2)
    > found = "false"
    > for j = 0 to ubound(ARR1)
    > if (ARR2(i) = ARR1(j)) then
    > found = "true"
    > exit for
    > end if
    > next
    > if found ="false" then
    > strOutput=strOutput & ARR2(i) & ","
    > ARR2temp = ARR2(i)
    > end if
    > next



    Where is ARR2temp used for ?
    You need to initialise strOutput
    Better use a boolean for "found"

    Let me try:

    strOutput=""
    for i = 0 to ubound(ARR2)
    found = false
    for j = 0 to ubound(ARR1)
    if ARR2(i) = ARR1(j) then
    found = true
    exit for
    end if
    next
    if not found then
    strOutput=strOutput & ARR2(i) & "<br>"
    end if
    next
    response.write strOutput

    =============================

    Even so, if ARR2 has duplicates not in ARR1, they will be written
    And if ARR1 has entries not in ARR2 they will not be written

    Perhaps it is better to
    1 delete all double entries inside each array
    2 put all values in one array arr3 and
    3 output all non-double entries ?

    This is step 3:

    for i=0 to ubound(arr3)
    for j=0 to ubound(arr3)
    found=false
    if arr3(i)=arr3(j) and i<>j then
    found=true
    exit for
    end if
    next
    if not found then
    response.write arr3(i) & "<br>"
    end if
    next


    --
    Evertjan.
    The Netherlands.
    (Please change the x'es to dots in my emailaddress)
     
    Evertjan., Jun 29, 2003
    #4
  5. Robb Meade

    Evertjan. Guest

    Re: Sorted it now...

    Evertjan. wrote on 29 jun 2003 in microsoft.public.inetserver.asp.general:

    > for i=0 to ubound(arr3)
    > for j=0 to ubound(arr3)
    > found=false
    > if arr3(i)=arr3(j) and i<>j then
    > .....


    damn, still not right, should be:

    for i=0 to ubound(arr3)
    found=false
    for j=0 to ubound(arr3)
    if arr3(i)=arr3(j) and i<>j then
    found=true
    exit for
    end if
    next
    if not found then
    response.write arr3(i) & "<br>"
    end if
    next


    --
    Evertjan.
    The Netherlands.
    (Please change the x'es to dots in my emailaddress)
     
    Evertjan., Jun 29, 2003
    #5
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Dylan
    Replies:
    5
    Views:
    432
    Daniel T.
    Mar 22, 2005
  2. Øyvind Isaksen
    Replies:
    1
    Views:
    1,001
    Øyvind Isaksen
    May 18, 2007
  3. Stephen Howe
    Replies:
    5
    Views:
    490
    James Kanze
    Jul 20, 2011
  4. John Wilson
    Replies:
    2
    Views:
    155
    John Wilson
    Jul 16, 2003
  5. sly
    Replies:
    10
    Views:
    166
    Anno Siegel
    Sep 15, 2005
Loading...

Share This Page