明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

ASP 中 Split 函數(shù)的案例

[摘要]我先介紹一下Split函數(shù)的用法: 返回值數(shù)組 = Split("字符串","分割符")  假設(shè)變量strURL保存著URL值,如strURL = "ftp://username:password@server",這是我們在IE中登錄到F...

我先介紹一下Split函數(shù)的用法:
 返回值數(shù)組 = Split("字符串","分割符")


  假設(shè)變量strURL保存著URL值,如strURL = "ftp://username:password@server",這是我們在IE中登錄到FTP上時的URL形式,如果我們想把其中的username和password取出來的話,該怎么辦呢?當然解決的方法有許多,在這里我們只介紹用Split來解決的方法。首先,我們找出分割符。我們發(fā)現(xiàn)在這個字符串中,username和password之間有個冒號把它們隔開了,所以我們就把這個冒號作為Split函數(shù)的"分割符"來分割整個字符串,最后達到取username和password的目的。代碼如下:
strURL = "ftp://username:password@server"
aryReturn = Split(strURL,":")

  這樣我們就把字符串用冒號分割開了,分割后的結(jié)果保存在aryReturn中(aryReturn是一個數(shù)組)。

  下面我們就來看看這個最終的結(jié)果吧,因為Split函數(shù)最終返回的是一個數(shù)組,所以我們主要就是顯示數(shù)組中的元素了,就要涉及到一些跟數(shù)組有關(guān)的函數(shù):IsArray()判斷是否數(shù)組的函數(shù),LBound()取數(shù)組的下標,UBound()取數(shù)組的上標。

Response.Write("返回值是否為數(shù)組:" & IsArray(aryReturn) & "<br>")
For i = LBound(aryReturn) To UBound(aryReturn)
Response.Write("返回值數(shù)組中的元素[" & i & "]:" & Right(aryReturn(i),Len(aryReturn(i))-2) & "<br>")
Next

  通過上面的代碼,我們看到字符串被分割成三個部分,即:"ftp"、"http://username"、"password@server"。我們要取username和password需要進一步的處理,我就不多說了,直接給出代碼。
  取username的代碼:
strUsername = Right(aryReturn(1),Len(aryReturn(1))-2)
  取password的代碼:

'取password我們又用到Split函數(shù)了,不過這回的分割符是"@"
aryTemp = Split(aryReturn(2),"@")
strPassword = aryTemp(0)
'我們可以順便取出server
strServer = aryTemp(1)

  分割符可以是一個字符,也可以是一個字符串。如:
aryReturn = Split("ftp://username:password@server,"http://")

  注意:
  1.一般來說,ASP中可以不聲明變量,使用Split函數(shù)時,如果要聲明返回值的變量的話,只能用Dim,而不能用Redim。雖然說其返回是一個數(shù)組,應(yīng)該是用Redim也可以,但在實際使用過程中是不行。不知是怎么回事?
  2. 如果用Split函數(shù)來分割一個字符串中并不存在的分割符時,將返回整個字符串,其結(jié)果是只有一個元素的數(shù)組。