设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

123下一页
返回列表 发新帖
查看: 2975|回复: 27
打印 上一主题 下一主题

[与其它组件] 请教有关截取字符的问题?

[复制链接]
跳转到指定楼层
1#
发表于 2006-4-10 23:32:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教有关截取字符的问题?

如:字符有可能是这样:4  4-  5  5-  6  6-  7  7-  8  8-  9  9-  10  10-  11  11-  12  12-  13  13-  1  1-  2  2-  3  3-

      也有可能是这样:36      37     38       39      40     41

现在我想要的是分别截取4 4- 5 5-等为一个字符存到一个数组或变量里面,也是就说不要空格的每一个字符作为一个值。   
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2006-4-10 23:35:00 | 只看该作者
提示不是很清楚,试下用replace()处理
3#
 楼主| 发表于 2006-4-10 23:39:00 | 只看该作者
这个函数不行啊?我是想把4截取出来放到变量1,4-截出来放到变量2啊?以此类推。
4#
发表于 2006-4-11 01:58:00 | 只看该作者
如果每串字符之间的间隔为2空格的话, 可以按下面的方法进行

Function GetStr(L As Integer)
Dim str, str1, I As Integer, J As Integer, rs(99)
str = "4  4-  5  5-  6  6-  7  7-  8  8-  9  9-  10  10-  11  11-  12  12-  13  13-  1  1-  2  2-  3  3-"
str = (Replace(str, "  ", ",")) & ","

For I = 1 To Len(str)
If Mid(str, I, 1) = "," Then
J = J + 1
rs(J) = I
End If
Next I
I = 1

If L > 1 And L <= J Then
GetStr = Mid(str, rs(L - 1) + 1, rs(L) - rs(L - 1) - 1)
ElseIf L = 1 Then
GetStr = Left(str, rs(L) - 1)
ElseIf L > J Then
MsgBox "超出数据范围"
End If
End Function

'//取得字符串
Function ds()
MsgBox GetStr(2) '2表示第2个字符
End Function
5#
 楼主| 发表于 2006-4-11 02:31:00 | 只看该作者
这种方法也不行.因为空格的间隔数是不定的,
6#
发表于 2006-4-11 03:15:00 | 只看该作者
等下再帮你修改一下,
7#
 楼主| 发表于 2006-4-11 03:36:00 | 只看该作者
先谢了,
8#
发表于 2006-4-11 04:24:00 | 只看该作者
有固定间隔符的字符串,最有效的拆分方法是使用:Split()
9#
 楼主| 发表于 2006-4-11 04:42:00 | 只看该作者
如何做啊?不太懂..
10#
 楼主| 发表于 2006-4-11 04:43:00 | 只看该作者
请继续指点一下..
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-6-3 00:29 , Processed in 0.092165 second(s), 33 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表