VB怎么去检查一个文本文件中每排的指定字符串前的数字

如下列文本内容1.《你好》你好简介2.《这是个测试》测试简介3.《。。。》。。。简介......我需要每次读取到这个txt文本文件里的“.”前的最大数字,如上述三排例子,... 如下列文本内容
1.《你好》
你好简介
2.《这是个测试》
测试简介
3.《。。。》
。。。简介
......
我需要每次读取到这个txt文本文件里的“.”前的最大数字,如上述三排例子,我需要读取到“3”。只读取在每行最前面的数字,不读取字符中间的最大数。
我的想法是读取每行的字符存放在变量里,然后检查这个变量首部是不是数字+“.”结尾,如果是就检查是不是最大数字,如果是,就输出。
展开
 我来答
伈雨_
2017-01-21 · TA获得超过299个赞
知道小有建树答主
回答量:233
采纳率:100%
帮助的人:91.5万
展开全部
Private Sub Command1_Click()
    Dim RegExp As Object, Matches As Object, Match%, t$, s$, n%(), tmp$(), List%, save%, total%, max%, result$
    Set RegExp = CreateObject("vbscript.regexp")
    t = Text1.Text
    With RegExp
        .Global = -1: .MultiLine = -1
        .Pattern = "^(\d*)\.(.*)"
        Set Matches = .Execute(t)
        s = .Replace(t, "#$2")
        s = Right(s, Len(s) - 1)
        tmp = Split(s, "#")
        total = Matches.Count - 1
        ReDim n(total)
        For Match = 0 To total
            n(Match) = Matches(Match).submatches(0)
            save = n(0)
            For List = 0 To UBound(n)
                If n(List) > save Then save = n(List): max = List
            Next
        Next
        result = save & "." & tmp(max)
        MsgBox result
    End With
End Sub

Private Sub Form_Load()
Dim s
s = "1.《你好》" & vbCrLf & _
"你好简介" & vbCrLf & _
"2.《这是个测试》" & vbCrLf & _
"测试简介 " & vbCrLf & _
"50.《我的测试》" & vbCrLf & _
"我的测试123" & vbCrLf & _
"3.《。。。》" & vbCrLf & _
"???简介"
Text1 = s
End Sub

新建一个工程,然后测试如上示范代码可得出指定数据,读取文件部分你自己写吧

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式