VB6.0,查找某一字符串中符合要求的字符。
例如:D:\Media\GVODMedia\20110101-1111-01.d我想要20110101-1111-01,如果只取简单的话,可以用left(x,n)来做,但...
例如:D:\Media\GVODMedia\20110101-1111-01.d
我想要20110101-1111-01,如果只取简单的话,可以用left(x,n)来做,但是如果位置D:\Media\GVODMedia\GVODMedia\20110101-11411-401.d,位数有变动的话,就不好用了。如果能在最后1个\和.d中间取得数据数据,会更好些,就不会受到字符串长度的限制了。20110101-11411-401,要如何写了 ,请指教下 展开
我想要20110101-1111-01,如果只取简单的话,可以用left(x,n)来做,但是如果位置D:\Media\GVODMedia\GVODMedia\20110101-11411-401.d,位数有变动的话,就不好用了。如果能在最后1个\和.d中间取得数据数据,会更好些,就不会受到字符串长度的限制了。20110101-11411-401,要如何写了 ,请指教下 展开
1个回答
展开全部
Dim str1 As String
Dim a1, a2 As Integer
str1 = "D:\Media\GVODMedia\GVODMedia\20110101-11411-401.d"
a1 = InStrRev(str1, ".")
a2 = InStrRev(str1, "\")
MsgBox Mid(str1, a2 + 1, a1 - a2 - 1)
从后往前找,先找 "." 的位置a1,然后再找最后一个"\"的位置a2
起始位置就是a2+1,查找的字符串的长度就是 a1-(a2+1)
所以用mid函数就能取出来了。
当然在实际做程序时还要判断在字符串是否存在"."、"\",即 a1、a2数值的大小,避免用mid时出错。
Dim a1, a2 As Integer
str1 = "D:\Media\GVODMedia\GVODMedia\20110101-11411-401.d"
a1 = InStrRev(str1, ".")
a2 = InStrRev(str1, "\")
MsgBox Mid(str1, a2 + 1, a1 - a2 - 1)
从后往前找,先找 "." 的位置a1,然后再找最后一个"\"的位置a2
起始位置就是a2+1,查找的字符串的长度就是 a1-(a2+1)
所以用mid函数就能取出来了。
当然在实际做程序时还要判断在字符串是否存在"."、"\",即 a1、a2数值的大小,避免用mid时出错。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询