
InStr([start, ]string1, string2[, compare])
这个函数需要的的参数是起始位置、主体字符串、要查找的字符串;Compare是
VB中如何实现文本查找功能
实现查找功能的关键在于使用InStr函数,这个函数可以找到指定的字符串在另一字符串中最先出现的位置。我们先来看一看使用这个函数的语法:
InStr([start, ]string1, string2[, compare])
这个函数需要的的参数是起始位置、主体字符串、要查找的字符串;Compare是可选参数。指定字符串比较。此compare参数是可以省略的,也可以是 0, 1或 2。指定0(缺省)做二进制比较。指定1做不区分大小写的文本比较。例如我们要查找在字符串“abcdefg”中是否存在“cd”并返回其位置,则使用下面的语句就可以实现:
pos=InStr(1,"abcdefg","cd")
则pos会返回3表示查找到并且位置为第三个字符开始。这就是“查找”的实现,而“查找下一个”功能的实现就是把当前位置作为起始位置继续查找。
下面举例说明:
放置一个文本框TEXT1供用户输入文本或调入文本文件,用来做在其中查找文本的验证,放置另一个文本框TEXT2供用户输入要查找的字符串,放置两个命令按钮,Command1、Command2,其标题分别为“查找”、“查找下一个”。
在窗体的总体声明部分写如下代码 :
Option Explicit ’定义目标位置变量
Private TargetPosition As Integer
’编写一个查找函数
Private Sub FindText(ByVal start_at As Integer)
Dim pos As Integer
Dim target As String
’获取用户输入的要查找的字符串
target = text2.Text
pos = InStr(start_at, text1.Text, target)
If pos >0 Then
’找到了匹配字符串
TargetPosition = pos
text1.SelStart = TargetPosition - 1
’选中找到的字符串
text1.SelLength = Len(target)
text1.SetFocus
Else ’没有找到匹配的字符串
MsgBox "没找到!"
text1.SetFocus
End If
End Sub
’双击“查找”命令按钮:
Private Sub command1_Click() ’从第一个字符处开始查找
FindText 1
End Sub
’双击“查找下一个”按钮:
Private Sub command2_Click() ’从当前位置继续查找
FindText TargetPosition + 1
End Sub
运行程序,在文本框1中输入一些字符串,在文本框2中输入要查找的字符串,单击 “查找”按钮和“查找下一个”按钮进行验证。
在这里需要举一个例子好能清楚的了解在VB中怎么查找文件,如下:假设要找的文件是TextBox 叫 TextBox1,那么可以在VB中这样写:
dim FileName, Path as string
Path = "D:\123\"
FileName = Path &TextBox1.Text &".xlsx" (后面根据文件的扩展名更改即可)
Workbooks.Open filename:=FileName
VB全称是Visual Basic,是一种由 Microsoft 公司开发的结构化的、模块化的、面向对象的、包含协助开发环境的事件驱动为机制的可视化程序设计语言。从任何标准来说,VB都是世界上使用人数最多的语言——不管是盛赞VB的开发者还是抱怨VB的开发者的数量。它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。
几个关键的地方 搜索字符串用InStr获得文件夹下的文件用io.directory.getfiles("路径") 递归子文件夹的话可以结合io.directory.getdirectories 可以用list(of string)来存放所有文件再用一个存放搜索到的文件listBox或者listview列出其他的自己想想吧欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)