在查看asp編碼的時候我們可以在其中發現有許多的數組重復項,但是一點點刪除又太麻煩了,那么我們現在就讓小編教你如何在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,",")
上文中介紹了教你如何在asp下去除數組中的重復項的內容,大家下次若是還需要除數組中的重復項就可以參照這些解決辦法,基本上可以搞定。