ASP中Split函数的实例

大家有碰到过要想取一字符串里的某些值而无从下手?有没有觉得看书或教材对split的写法糊里糊涂……如果有此疑问的话,请看下面我对例子的解释,相信您会对这个有一定的了解。

  我先介绍一下Split函数的用法:
 返回值数组 = Split("字符串","分割符")


  假设变量strURL保存着URL值,如strURL = "ftp://username:password@server",这是我们在IE中登录到FTP上时的URL形式,如果我们想把其中的username和password取出来的话,该怎么办呢?当然解决的方法有许多,在这里我们只介绍用Split来解决的方法。首先,我们找出分割符。我们发现在这个字符串中,username和password之间有个冒号把它们隔开了,所以我们就把这个冒号作为Split函数的"分割符"来分割整个字符串,最后达到取username和password的目的。代码如下:
strURL = "ftp://username:password@server"
aryReturn = Split(strURL,":")

  这样我们就把字符串用冒号分割开了,分割后的结果保存在aryReturn中(aryReturn是一个数组)。

  下面我们就来看看这个最终的结果吧,因为Split函数最终返回的是一个数组,所以我们主要就是显示数组中的元素了,就要涉及到一些跟数组有关的函数:IsArray()判断是否数组的函数,LBound()取数组的下标,UBound()取数组的上标。


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

  通过上面的代码,我们看到字符串被分割成三个部分,即:"ftp"、"//username"、"password@server"。我们要取username和password需要进一步的处理,我就不多说了,直接给出代码。
  取username的代码:
strUsername = Right(aryReturn(1),Len(aryReturn(1))-2)
  取password的代码:


'取password我们又用到Split函数了,不过这回的分割符是"@"
aryTemp = Split(aryReturn(2),"@")
strPassword = aryTemp(0)
'我们可以顺便取出server
strServer = aryTemp(1)

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

  注意:
  1.一般来说,ASP中可以不声明变量,使用Split函数时,如果要声明返回值的变量的话,只能用Dim,而不能用Redim。虽然说其返回是一个数组,应该是用Redim也可以

 

 

 

   Visual Basci中的几个函数:
1.Split(包含子字符串和分隔符的字符串表达式 ,[分隔符],[要返回的子字符串数],[数字值表示判别子字符串时使用的比较方式]),[]部分为可选部分。该函数返回一个以零为下标的一维数组,它包含指定数目的子字符串。
    例:
    dim xx as variant
    xx=split("hello world"," ")'将hello world 分隔为hello和world 
    text1.text= xx(0) '返回hello
    text2.text=xx(1) '返回world
2.Ubound(数组名),该函数返回一个 Long 型数据,其值为指定的数组维可用的最大下标
   Lbound(数组名),返回一个 Long 型数据,其值为指定数组维可用的最小下标。
    例:
    dim xx as variant
    xx=split("hello world"," ")
    text1.text=ubound(xx)  '返回1
    text2.text=lbound(xx)  ‘返回0
3.Instr([start, ]string1, string2),该函数返回 Variant (Long),指定一字符串(string2)在另一字符串中(string1)最先出现的位置,如果没有找到返回0。[start,]为可选参数,表示搜索的开始位置。
    例:
    dim xx as string
    xx="hello world"
    text1.text=instr(xx,"o") '返回5
    text2.text=instr(6,xx,"o") '返回8,从第6个字符开始查找
4.Mid(string, start[, length]),返回Variant (String),其中包含字符串(string)中指定长度[,length]的字符,start为开始位置。其中的[,length]为可选参数不指定长度,则返回start后的所有字符。
      例:
      dim xx  as sting
      xx="hello world"
      text1.text=mid(xx,1,5)'返回hello
      text2.text=mid(xx,1)  '返回hello world 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值