在VBScript中有Filter這個(gè)函數(shù)可以用來對數(shù)組進(jìn)行過濾,并返回原數(shù)組的一個(gè)子集數(shù)組。
語法說明:
Filter 函數(shù)
返回下標(biāo)從零開始的 數(shù)組,其中包含以特定過濾條件為基礎(chǔ)的字符串?dāng)?shù)組的子集。
Filter(InputStrings, Value[, Include[, Compare]])
參數(shù)
InputStrings
必選項(xiàng)。一維數(shù)組,要在其中搜索字符串。
Value
必選項(xiàng)。要搜索的字符串。
Include
可選項(xiàng)。Boolean 值,指定返回的子字符串是否包含 Value。如果 Include 為 True,F(xiàn)ilter 將返回包含子字符串 Value 的數(shù)組子集。如果 Include 為 False,F(xiàn)ilter 將返回不包含子字符串 Value 的數(shù)組子集。
Compare
可選項(xiàng)。數(shù)字值指出使用的比較字符串 類型.請參閱值設(shè)置部分.
設(shè)置
Compare 參數(shù)可以有以下值:
常數(shù)
值
描述
vbBinaryCompare
0
執(zhí)行二進(jìn)制比較。
vbTextCompare
1
執(zhí)行文本比較。
說明
如果在 InputStrings 中沒有找到與 Value 匹配的值,F(xiàn)ilter 將返回空數(shù)組。如果 InputStrings 為 Null 或者不是一維數(shù)組,則會發(fā)生錯誤。
由 Filter 函數(shù)返回的數(shù)組僅包含足以包含匹配項(xiàng)數(shù)目的元素。
下面例子利用 Filter 函數(shù)返回包含搜索條件 "Mon" 的數(shù)組:
復(fù)制代碼 代碼如下:
Dim MyIndex
Dim MyArray (3)
MyArray(0) = "Sunday"
MyArray(1) = "Monday"
MyArray(2) = "Tuesday"
MyIndex = Filter(MyArray, "Mon") 'MyIndex(0) 包含 "Monday"。
在紅色的位置需要注意一下,MyIndex是一個(gè)數(shù)組!~
復(fù)制代碼 代碼如下:
Dim MyIndex,IndexItem
Dim MyArray(2)
MyArray(0) = "Sunday"
MyArray(1) = "Monday"
MyArray(2) = "Monday"
MyIndex = Filter(MyArray,"Tuesday")
For IndexItem = 0 To UBound(MyIndex)
Response.Write MyIndex(Monday)&"<br />"
Next