| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY 
共有 586 人关注过本帖
标题:Split这个函数怎么用?
收藏  订阅  推荐  打印 
中国男孩
Rank: 3Rank: 3
等级:中级会员
帖子:283
积分:2954
注册:2006-3-19
Split这个函数怎么用?

各位大侠,有问题想请教一下,:
Split这个函数怎么用啊?
我想要用这个函数来控制文本框里不能填写在我所控制之内的内容:
比如:有一页是来提交表单的,另外一页是来处理这个表单的,我想在处理表单这一页来用Split函数来控制表单不能输入(,:][‘><?/-=+_)等之内的字符!否则就弹出一个对话框,比如说:不能输入这些字符!



搜索更多相关主题的帖子: Split  函数  
2007-10-14 01:42
multiple1902
Rank: 12Rank: 12Rank: 12
等级:版主
威望:40
帖子:4479
积分:45682
注册:2007-2-9

配合Instr之类的函数完成


[CODE]Dim GetText
GetText=Trim(Request("NewQuote"))

Const BannedTexts=", : ] [ ' > < ? / - = +"
Dim BannedText()
BannedText=Split(BannedTexts," ")

Dim i
For i=0 To UBound(BannedText)
If Instr(GetText,BannedText(i))>0 Then
Response.Write "<i>请不要在文本框里输入<b>" & Server.HtmlEncode(BannedText(i)) & "</b>字符,此留言未写入数据库</i>"
'Call CloseConn() ' 关闭数据库连接
Response.End '结束处理和输出
End If
Next 'i[/CODE]

不过既然都是一个字符的话 我更喜欢下面这种方法,不用Split

[CODE]Dim GetText
GetText=Trim(Request("NewQuote"))

Const BannedChars=",:]['><?/-=+"

Dim i
For i=1 To Len(BannedChars)
If Instr(GetText,Mid(BannedChars,i,1))>0 Then
Response.Write "<i>请不要在文本框里输入<b>" & Server.HtmlEncode(Mid(BannedChars,i,1)) & "</b>字符,此留言未写入数据库</i>"
'Call CloseConn() ' 关闭数据库连接
Response.End '结束处理和输出
End If
Next 'i[/CODE]


“高考”这个词在耳边不断萦绕,心中的激动不言而喻。写下一句话,一起努力。Let's struggle together.
2007-10-14 08:47
永夜的极光
Rank: 12Rank: 12Rank: 12
等级:版主
威望:17
帖子:2668
积分:34025
注册:2007-10-9

asp的split函数不是太好用,很多情况没考虑好,所以最好不要用,非要用到的话还是自己写一个函数比较安全

从BFS(Breadth First Study)到DFS(Depth First Study)
学习VIM中,欢迎访问我的blog  http://hi.baidu.com/newkedison
严重鄙视一切把论坛当成作业生成器和人肉搜索引擎的人
2007-10-14 19:48
multiple1902
Rank: 12Rank: 12Rank: 12
等级:版主
威望:40
帖子:4479
积分:45682
注册:2007-2-9

以下是引用永夜的极光在2007-10-14 19:48:57的发言:
asp的split函数不是太好用,很多情况没考虑好,所以最好不要用,非要用到的话还是自己写一个函数比较安全

挺好用的啊,不知道你想用split干什么。如果你想要吃汉堡的话,split的确没用,要用RMB。


“高考”这个词在耳边不断萦绕,心中的激动不言而喻。写下一句话,一起努力。Let's struggle together.
2007-10-14 20:07
永夜的极光
Rank: 12Rank: 12Rank: 12
等级:版主
威望:17
帖子:2668
积分:34025
注册:2007-10-9

汉堡不好吃,来俩鸡翅好了,谈RMB太伤感情,就免了吧

我以前试过这个split函数,对于完全合理的输入,分解结果那是肯定对的(其实这是废话

但是对一些特殊情况的处理考虑不全面(具体是什么特殊情况我忘记了,以后查查)

总之如果在用split前可以保证字符串完全合理,那可以用,但是如果字符串来自于用户输入,那随时可能出问题。


从BFS(Breadth First Study)到DFS(Depth First Study)
学习VIM中,欢迎访问我的blog  http://hi.baidu.com/newkedison
严重鄙视一切把论坛当成作业生成器和人肉搜索引擎的人
2007-10-14 20:25
multiple1902
Rank: 12Rank: 12Rank: 12
等级:版主
威望:40
帖子:4479
积分:45682
注册:2007-2-9

以下是引用永夜的极光在2007-10-14 20:25:32的发言:

汉堡不好吃,来俩鸡翅好了,谈RMB太伤感情,就免了吧

我以前试过这个split函数,对于完全合理的输入,分解结果那是肯定对的(其实这是废话

但是对一些特殊情况的处理考虑不全面(具体是什么特殊情况我忘记了,以后查查)

总之如果在用split前可以保证字符串完全合理,那可以用,但是如果字符串来自于用户输入,那随时可能出问题。

我还没构造出不合理的情况。但是split的确有局限性,比如如果我要空格也能分隔,逗号也能分隔,可以混合使用,split就没法用了。
当然有一种思路是先把逗号replace成空格,然后执行split(这主意真不错哦)


“高考”这个词在耳边不断萦绕,心中的激动不言而喻。写下一句话,一起努力。Let's struggle together.
2007-10-14 20:31
永夜的极光
Rank: 12Rank: 12Rank: 12
等级:版主
威望:17
帖子:2668
积分:34025
注册:2007-10-9


程序代码:

<BR>&lt;%<BR>dim s<BR>s=" a b c d e "<BR>response.write(ubound(split(s," ")))<BR>%&gt;<BR>

split对于多空格的处理就比较有问题


从BFS(Breadth First Study)到DFS(Depth First Study)
学习VIM中,欢迎访问我的blog  http://hi.baidu.com/newkedison
严重鄙视一切把论坛当成作业生成器和人肉搜索引擎的人
2007-10-14 21:44
multiple1902
Rank: 12Rank: 12Rank: 12
等级:版主
威望:40
帖子:4479
积分:45682
注册:2007-2-9

以下是引用永夜的极光在2007-10-14 21:44:27的发言:


程序代码:

<BR>&lt;%<BR>dim s<BR>s=" a b c d e "<BR>response.write(ubound(split(s," ")))<BR>%&gt;<BR>

split对于多空格的处理就比较有问题


程序代码:
<BR>&lt;%<BR>dim s<BR>s=" a b c d e "<BR><STRONG>While Instr(s," ")<BR> s=replace(s," "," ")<BR>Wend</STRONG><BR>response.write(ubound(split(s," ")))<BR>%&gt;<BR>


“高考”这个词在耳边不断萦绕,心中的激动不言而喻。写下一句话,一起努力。Let's struggle together.
2007-10-14 21:46
永夜的极光
Rank: 12Rank: 12Rank: 12
等级:版主
威望:17
帖子:2668
积分:34025
注册:2007-10-9

能够处理我知道,但是我觉得这个本来应该在split里面自己处理的

话说回来,在我说这个之前,你用split的时候,有没有这么处理一遍呢?

从BFS(Breadth First Study)到DFS(Depth First Study)
学习VIM中,欢迎访问我的blog  http://hi.baidu.com/newkedison
严重鄙视一切把论坛当成作业生成器和人肉搜索引擎的人
2007-10-14 22:04
中国男孩
Rank: 3Rank: 3
等级:中级会员
帖子:283
积分:2954
注册:2006-3-19

谢谢各位大侠的讲解,我有一名ASP初学者,以后有什么问题还得请教各位大侠们

我很想把计算机学好!!
2007-10-15 13:54
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.070692 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved