获得不相同的两字符串中间的数据-雨丝情愁
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> 源码示例


获得不相同的两字符串中间的数据

发表时间:2011/7/14 15:22:55 评论(1) 浏览(5524)  评论 | 加入收藏 | 复制
   
摘 要:'¤**********************【获得不相同的两字符串中间的数据】*****************¤
'⊙ 函数名:InStrLR
'⊙ 使用方法:InStrLR(目标字符串,第一个限定字符串,第二个限定字符串)
'⊙ 描述:获得任意两字符串之间的字符串 (转载请保留作者信息)
'⊙ 版本:v1.1.0
'⊙ 创作时间:2011年6月21日
'⊙ 作者:雨丝情愁
'¤***************************************************************¤

正 文:

'¤**********************【获得不相同的两字符串中间的数据】*****************¤
'⊙ 函数名:InStrLR
'⊙ 使用方法:InStrLR(目标字符串,第一个限定字符串,第二个限定字符串)
'⊙ 描述:获得任意两字符串之间的字符串 (转载请保留作者信息)
'⊙ 版本:v1.1.0
'⊙ 创作时间:2011年6月21日
'⊙ 作者:雨丝情愁
'¤************************************************************************¤

'获得两字符串中间的数据
   Public Function InStrLR(inString, LSrchString, RSrchString As String) As String
         Dim iCurPosL, iCurPosR As Integer
         Dim m, n As Integer
         m = Len(LSrchString) '取得第一个字符串的长度
         n = Len(RSrchString) '取得第二个字符串的长度
        iCurPosL = InStr(1, inString, LSrchString, vbTextCompare) '获得第一个字符串的第一个字母出现的位置
        iCurPosR = InStr(iCurPosL + m, inString, RSrchString, vbTextCompare) '获得第二个字符串在第一个字符串后的第一个字母出现的位置
        '字符串显示
        If iCurPosL > 0 And iCurPosR > 0 Then    '两个搜寻字符串都不为空
            InStrLR = Mid(inString, iCurPosL + Int(m), iCurPosR - Int(m) - Int(iCurPosL))
         Else                                                         ‘两个搜寻字符串其中一个为空或两个都为空
            InStrLR = inString
        End If
   End Function

 

 

 

 

VBS使用时候去掉定义数据类型部分,我在VBS实例代码中已经去掉了

shu=InputBox ("请输入一个目标字符串:")
cha1=InputBox ("请输入第一要查询字符串:")
cha2=InputBox ("请输入第二要查询字符串:")

'msgbox InStrLR(shu,cha1,cha2)
MsgBox "字符串 “" & cha1 & "” 与 字符串 “" & cha2 & "” 之间的 在文章:  “" & shu & "”   中出现的第一次数据是:" & vbCrLf & vbCrLf & vbCrLf & "“" & InStrLR(shu,cha1,cha2) & "”"

'¤**********************【获得不相同的两字符串中间的数据】***********************¤
'⊙ 函数名:InStrLR
'⊙ 使用方法:InStrLR(目标字符串,第一个限定字符串,第二个限定字符串)
'⊙ 描述:获得任意两字符串之间的字符串 (转载请保留作者信息)
'⊙ 版本:v1.1.0
'⊙ 创作时间:2011年6月21日
'⊙ 作者:雨丝情愁
'¤****************************************************************************¤
Function InStrLR(inString, LSrchString, RSrchString)
        ' Dim iCurPosL, iCurPosR As Integer
        ' Dim m, n As Integer
         m = Len(LSrchString) '取得第一个字符串的长度
         n = Len(RSrchString) '取得第二个字符串的长度
        iCurPosL = InStr(1, inString, LSrchString, vbTextCompare) '获得第一个字符串的第一个字母出现的位置
        iCurPosR = InStr(iCurPosL + m, inString, RSrchString, vbTextCompare) '获得第二个字符串在第一个字符串后的第一个字母出现的位置
        '字符串显示
        If iCurPosL > 0 And iCurPosR > 0 Then    '两个搜寻字符串都不为空
            InStrLR = Mid(inString, iCurPosL + Int(m), iCurPosR - Int(m) - Int(iCurPosL))
         Else                                                         '两个搜寻字符串其中一个为空或两个都为空
            InStrLR = inString
        End If
   End Function

点击下载此附件vb源码

点击下载此附件VBS源码


Access软件网交流QQ群(群号:198465573)
 
 相关文章
零长度字符串与空值的区别  【殷小宝  2013/4/20】
【Access小品】替换批量Word文件中的字符串示例  【煮江品茶  2013/4/27】
InstrRev函数,从右边算起,获取字符串在另一个字符串中出现的...  【宏鹏  2013/5/1】
access中null和空字符串的区别  【小赵  2013/5/6】
常见问答
技术分类
相关资源
文章搜索
关于作者

雨丝情愁

文章分类

文章存档

友情链接