打印本文
关闭窗口
Split 函数应用示例 ( VBScript版本 )
作者:
武汉SEO闵涛
文章来源:
敏韬网
点击数1166 更新时间:2009/4/23 18:59:25 文章录入:mintao 责任编辑:mintao
Split 函数应用示例 ( VBScript版本 )
-- Sailflying
Sailflying(车仔)原创,版权所有,如需使用,请与我联系( sailflying@163.net )
动机:
经典论坛里有个朋友问“一串字符,逗号格开,分开做链接,VBS有这种函数吗?”他想解决的是:“一串字符,逗号格开,分开做链接。比如:论坛首页里‘Fly, mjking, stchin, vvjohn, 不太清醒, 苛子, 车仔’每个名字都是一个链接。”
这就需要从输入的变量中读取数据,根据数据项用split函数将其分开,转化为一个数组进行处理,并用trim函数去掉数据前后空格。这样可以轻松的提取自己需要的数值了。
这里我用到了正则表达式中的Split 函数。
Split 函数
将字符串依指定的规则切开。
语法: array split(string pattern, string string, int [limit]);
返回值: 数组
函数种类: 资料处理
内容说明
本函数可将字符串依指定的规则分开。切开后的返回值为数组变量。
参数 pattern 为指定的规则字符串、参数 string 则为待处理的字符串、参数 limit 可省略,表示欲处理的最多合乎值。
值得注意的是本函数的 pattern 参数有区分大小写。。
材料:
表单域 (
form1
)
文本框 (
text1,text2
)
显示层 (
Layer1
)
确定键 (
Command1
)
效果:
浏览这里
代码:
自定义函数:
txtSplit
(将输入框中的多个变量分离开来,并显示在列表项,在层中显示每个变量的链接) <SCR
IP
T LANGUAGE="
VBScript
">
<!--
Sub
txtSplit
()
form1.Text1.value
= Replace(
form1.Text1.value
, " ", "") ''''清除字串中的空格
If
form1.Text1.value
<> "" Then
''''MsgBox "yes"
''''Dim vArr As Variant
''''Dim astr(10) As String
''''vArr = astr
vArr =
Split
(
form1.Text1.value
, ",")
form1.Text2.value
= "分离变量列表 "+
vbCrLf
+ "-------------"+
vbCrLf
Layer1.innerHtml
= "<br> 变量链接列表<br> -------------<br>"
For i =
LBound
(vArr) To
UBound
(vArr)
If (vArr(i) <> "") Then
form1.Text2.value
=
form1.Text2.value
+ vArr(i)
If (i <
UBound
(vArr)) Then
form1.Text2.value
=
form1.Text2.value
+
vbCrLf
End If
Layer1.innerHtml
=
Layer1.innerHtml
+" <A target=''''_blank'''' HREF=http://www.blueidea.com/bbs/viewuser.asp?username="+vArr(i)+">"+vArr(i)+"</A><br>"
End If
Next
Else
MsgBox
"请输入变量。"
End If
End Sub
//-->
</SCR
IP
T>
表单源码 <form name="
form1
" >
请输入变量: (变量之间用“,”隔开)
<input type="text" name="
text1
" style="width:360" value="
Fly, mjking, stchin, vvjohn, 不太清醒, 苛子, 车仔
">
<input type="button" name="
Command1
" value="分离" onClick="
txtSplit()
">
<textarea name="
text2
" rows="9" cols="15" readonly></textarea>
<div id="
Layer1
" style=" width:160px; height:148px; background-color: #F0F7FF; layer-background-color: #F0F7FF; border: 1px none #000000; clip: rect(10 10 10 10)" align="left">
</div>
</form>
打印本文
关闭窗口