asp下去除数组中重复项的方法

  

复制代码 代码如下:

  <%

  Function MoveR(Rstr)

  Dim i,SpStr

  SpStr = Split(Rstr,",")

  For i = 0 To Ubound(Spstr)

  If I = 0 then

  MoveR = MoveR & SpStr(i) & ","

  Else

  If instr(MoveR,SpStr(i))=0 and i=Ubound(Spstr) Then

  MoveR = MoveR & SpStr(i)

  Elseif instr(MoveR,SpStr(i))=0 Then

  MoveR = MoveR & SpStr(i) & ","

  End If

  End If

  Next

  End Function

  response.write MoveR("abc,abc,dge,gcg,dge,gcg,die,dir,die")%>

  结果是:abc,dge,gcg,die,dir

  如果是两个数组进行对比,去掉相同的数组元素:

  

复制代码 代码如下:

  <%

  Function mover(farray,sarray)

  a = Split(farray, ",")

  Set dic = CreateObject("Scripting.Dictionary")

  For k=0 To UBound(a)

  If a(k)<> "" Then dic.Add "_" & a(k), a(k)

  Next

  a = Split(sarray, ",")

  For k=0 To UBound(a)

  If a(k)<> "" Then

  If dic.Exists("_" & a(k)) Then

  dic.Remove "_" & a(k)

  End If

  End If

  Next

  items = dic.Items()

  Set dic = Nothing

  moveR=Join(items, ",")

  End Function

  n1 = "a,b,1,11,12,13,14,15,16,17,19,20,22"

  n2 = "a,1,12,14,18,19,20"

  response.write mover(n1,n2)

  %>

  结果是:

  3.数组A中有为空的元素(如a=array("ww","ss","","dd","","ee")),

  想把这些空元素从数组A中去掉.并把去掉空元素有的数组赋给数组B.

  

复制代码 代码如下:

  str=""

  for i = lbound(A) to ubound(A)

  if A(i)<>"" then

  if i<>lbound(A) then str = str + "," end if

  str = str & A(i)

  end if

  next

  b = split(str,",")