一个简单的VB语句帮忙看下什么意思

来源:百度知道 编辑:UC知道 时间:2024/05/13 14:14:54
Public Function GetStringBack(ByVal St$, _
ByVal sP$) As String
If St$ = "" Then Exit Function
GetStringBack = Mid(St$, InStrRev(St$, sP$), Len(St$) - InStrRev(St$, sP$) + 1)
End Function
主要是这句Mid(St$, InStrRev(St$, sP$), Len(St$) - InStrRev(St$, sP$) + 1)什么意思?

Mid(c,n1,n2)表示处字符串c的第n1个字符开始向右取n2个字符
Instrrev(string1, string2[, start[, compare]]) 返回某字符串在另一个字符串中出现的从结尾计起的位置。
len(string)返回字符串的个数
举个例子来理解吧
假如St$为“abc”,sP$为“a”,则
InStrRev(St$, sP$)=1,
Len(St$)=3
Mid("abc",1,3),表示字符串"abc"的第1个字符开始向右取3个字符,结果为"abc"

从St中反序找sP,找到后把sP右边(包括sP)的所有字符返回

这是一个函数.
返回ST$中的SP$(如果ST$中有SP$)之后的字符.
例如:
GetStringBack("abcdefghi","cde")就等于"cdefghi"

If St$ = "" Then Exit Function '如果St$是空的,就是没有任何字符,那就退出函数.
GetStringBack = Mid(St$, InStrRev(St$, sP$), Len(St$) - InStrRev(St$, sP$) + 1) '计算出ST$中的SP$(如果ST$中有SP$)之后的字符.MID,INSTRREV,LEN是VB的内置函数,据体的使用可以到下面的地址看看.