VB怎样实现简单字符搜索功能

1.打开一个文本文件,然后,我建立一个文本框,输入关键字,然后在第二个文本框里显示出来,应该怎么写?
2.打开文本文件,文本有几行字,如果我把它们读到VB里,怎么样实现根据原文本换行?

1 VB实现文本查找和替换

实现查找功能的关键在于使用InStr函数,这个函数可以找到指定的字符串在另一字符串中最先出现的位置。我们先来看一看使用这个函数的语法:
InStr([start, ]string1, string2[, compare])
这个函数需要的的参数是起始位置、主体字符串、要查找的字符串;Compare是可选参数。指定字符串比较。此compare参数是可以省略的,也可以是 0, 1或 2。指定0(缺省)做二进制比较。指定1做不区分大小写的文本比较。例如我们要查找在字符串“abcdefg”中是否存在“cd”并返回其位置,则使用下面的语句就可以实现:
pos=InStr(1,"abcdefg","cd")
则pos会返回3表示查找到并且位置为第三个字符开始。这就是“查找”的实现,而“查找下一个”功能的实现就是把当前位置作为起始位置继续查找。

Replace函数
语法:Replace( 字符串表达式,findnreplacewith[,start[,count[,compare]]])
功能:将一个字符串取代 部份字。寻找待取代的原字符串 (find) , 若找到则被取代为新字符串 (replacewith) 。
说明:find :待寻找取代的原字符串。
replacewith :取代后的字。
start :从第几个字开始寻找取代, 若未设定则由第一个字开始寻找。
count :取代的次数。 若未设定则所有寻找到的字符串取代字符 串全部被取代。
compare :寻找比较的方法, compare=0 表示二进制比较法, compare=1 表文字比较法, compare =2 表根据比较的 数据型态而定, 若省略 compare 则为预设的二进制比较法。

2
Private Sub Command1_Click()
Text1.Text = ""
Open "c:\a.txt" For Input As #1
Text1.SelText = StrConv(InputB(LOF(1), #1), vbUnicode)
Close #1
End Sub
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-28

放置一个文本框TEXT1供用户输入文本或调入文本文件,用来做在其中查找文本的验证,放置另一个文本框TEXT2供用户输入要查找的字符串,放置两个命令按钮,Command1、Command2,其标题分别为“查找”、“查找下一个”。

01    Option Explicit    
02    '定义目标位置变量    
03    Private TargetPosition As Integer    
04    '编写一个查找函数    
05    Private Sub FindText(ByVal start_at As Integer)    
06    Dim pos As Integer    
07    Dim target As String    
08    '获取用户输入的要查找的字符串    
09    target = text2.Text    
10    pos = InStr(start_at, text1.Text, target)    
11    If pos > 0 Then '找到了匹配字符串    
12    TargetPosition = pos    
13    text1.SelStart = TargetPosition - 1    
14    '选中找到的字符串    
15    text1.SelLength = Len(target)    
16    text1.SetFocus    
17    Else '没有找到匹配的字符串    
18    MsgBox "没找到匹配的字符串!"    
19    text1.SetFocus    
20    End If    
21    End Sub

相似回答