截字符串 假如这样一个字符串:str = e:/a/zzz/b/b/b.xls我要截取从zzz开始一直到最后的部分;但是str 这个字符串是变化的,其中只有zzz固定,其它的部分均不固定的,我要怎么写呢。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 补充一下:“其中只有zzz固定”是指str中肯定包含zzz,其它的都不一定包含 这样设想一下:第一,先用函数得到str中zzz的位置,第二,从zzz的起始开始截取自zzz往后的字符串 但是instr()函数只能得到单个字符的位置,我的这个zzz不是单个字符,有什么可用的函数吗 Private Sub Command1_Click() Dim i As Long Dim strFind As String Dim strData As String strFind = "zzz" strData = "e:/a/zzz/b/b/b.xls" i = InStr(1, strData, strFind, vbTextCompare) If i > 0 Then Debug.Print Mid(strData, i + Len(strFind)) End If End SubPrivate Sub Command2_Click() Dim v As Variant Dim strFind As String Dim strData As String strFind = "zzz" strData = "e:/a/zzz/b/b/b.xls" v = Split(strData, strFind) If UBound(v) = 1 Then Debug.Print v(1) End If End Sub其中,第二种方法要求字符串中只能出现一次分隔字符。 有没有VB版本的GooglePR checksum 算法。高分求 VB查询数据库 刚写好的 老虎机(pc版),没找到上传的网址,要的帮顶! vb中使用剪贴板的问题 SetUp Factory 打包时需要把需要的文件跳出来放到一个文件夹里吗? ActiveReport2.0如何设置为打印时打印机横向打印? 如何关闭SHELL打开的程序 类似DreamweaverMX代码窗体中的行号栏与代码栏的同步是怎样实现的? 用vb如何从execl中读数据到access中 在VB中如何动态的在一个表中增加或减少一个字段? 自定义控件在软件最大化时无法显示? 如何提升本进程为系统权限
第一,先用函数得到str中zzz的位置,
第二,从zzz的起始开始截取自zzz往后的字符串
Dim i As Long
Dim strFind As String
Dim strData As String
strFind = "zzz"
strData = "e:/a/zzz/b/b/b.xls"
i = InStr(1, strData, strFind, vbTextCompare)
If i > 0 Then
Debug.Print Mid(strData, i + Len(strFind))
End If
End SubPrivate Sub Command2_Click()
Dim v As Variant
Dim strFind As String
Dim strData As String
strFind = "zzz"
strData = "e:/a/zzz/b/b/b.xls"
v = Split(strData, strFind)
If UBound(v) = 1 Then
Debug.Print v(1)
End If
End Sub其中,第二种方法要求字符串中只能出现一次分隔字符。