我的思路(VB):
添加richtextbox,button1----named:findword,textbox1---named:findcondition
1导入文本或自己写
2在textbox1里输入你的条件如:*bv,或b?v
3查找
3a如果是*bv用,先dim个string=textbox1.text,用instr获取bv出现的位置,然后用string=mid(string,1,'你所获得的位置),再用richtextbox的find方法找string,找第2个的话以此类推
3b如果是b*v,其实和上面差不多,只要找开头是b和以v结尾的字串=string,就行了
3c如果是b?v,或??bv,b??v时,条件要分开写,这里只写一个b?v:先找到b, 然后将当前的光标位置后移2看字符是否为v希望对你有帮助,如果你编好了,可否发来一看,享受你的成果??
mailto:  [email protected]

解决方案 »

  1.   

    我这里编写了一个文本搜索器,他支持*bv,bv*,*bv*,?bv,bv? ,但不支持B*v,b?V,不过这个好编写,你如果需要的话,给我留言,并附上你的Email
      

  2.   


      文本搜索器,支持.bv,bv.,.bv.,..bv..,.bv.,b.v 以点‘.’作统配符
    Function RegExpTest(patrn, strng)
        Dim regEx, Match, Matches     ''建立变量。
        Set regEx = New RegExp     ''建立正则表达式。
        regEx.Pattern = patrn    ''设置模式。
        regEx.IgnoreCase = True     ''设置是否区分字符大小写。
        regEx.Global = True     ''设置全局可用性。
        Set Matches = regEx.Execute(strng)    ''执行搜索。
        For Each Match In Matches    ''遍历匹配集合。
        RetStr = RetStr & "postion:"
        RetStr = RetStr & Match.FirstIndex & vbCrLf & "  Value:'"
        RetStr = RetStr & Match.Value & "' " & vbCrLf
        Next
        RegExpTest = RetStr
    End FunctionPrivate Sub Command2_Click()
        Text2.Text = RegExpTest(Text1.Text, RichTextBox1)
        'Text2.Text = RegExpTest("[ij]s.", RichTextBox1)
        'Text2.Text = RegExpTest(".js.", RichTextBox1)
        'Text2.Text = RegExpTest("s..", RichTextBox1)
    End Sub