标题:求助,字符串中提取数字问题
只看楼主
xiaoshi112
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2011-2-10
结帖率:50%
已结贴  问题点数:10 回复次数:2 
求助,字符串中提取数字问题
哪位大侠,能帮我写个函数,从字符串中分别提取数字,谢谢!
第12大排第8小排第10个集装箱
搜索更多相关主题的帖子: 字符串 集装箱 
2016-10-29 07:20
HVB6
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:15
帖 子:320
专家分:561
注 册:2013-10-30
得分:5 
回复 楼主 xiaoshi112
试试:
Private Sub Command1_Click()
   Dim s As String, i As Integer, j As Integer, s1 As String, s2
   Dim js()
   s = "第12大排第8小排第10个集装箱"
   For i = 1 To Len(s)
     s1 = Mid(s, i, 1)
     If Asc(s1) >= 48 And Asc(s1) <= 57 Then
       j = j + 1
       ReDim Preserve js(1 To j)
       js(j) = i
       If j = 1 Then
          s2 = s1
       ElseIf j > 1 Then
         If js(j) - js(j - 1) = 1 Then
           s2 = s2 & s1
         Else
            s2 = s2 & " " & s1
         End If
        End If
      End If
      s1 = ""
    Next
   MsgBox s2
End Sub
2016-10-29 07:59
ZHRXJR
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:125
帖 子:1034
专家分:5519
注 册:2016-5-10
得分:5 
下面是在任意字符串可以检测出小于100的数字的代码:
程序代码:
Private Sub Command1_Click()
Text2.Text = ""
Dim STT As String, STT1 As String, B As Integer, C As Integer, AA() As Byte, I As Integer
STT = Text1.Text    '得到需要检测的字符串
 B = 0: C = Len(STT)   'C变量是字符串长度
ReDim AA(1 To C)
For I = 1 To C
AA(I) = 200    '初始化AA数组,赋值为200
Next I
For I = 1 To C
    STT1 = Mid(STT, I, 1)   'STT1变量得到各字符
    B = B + 1
    If IsNumeric(STT1) = True Then   '判断字符是不是数字
        AA(B) = Val(STT1)   '是数字,修改AA数组的值
    End If
Next I
Dim D As Integer, BB() As Byte
For I = 1 To C - 1
If AA(I) < 100 And AA(I + 1) < 100 Then   '判断AA数组的值是否小于100,并且是否是连续的
AA(I) = AA(I) * 10 + AA(I + 1)    '如果连续修改第一个数字为第一个数字*10+第二个数字
AA(I + 1) = 200   '第二个数字修改为200
End If
Next I
For I = 1 To C
If AA(I) < 100 Then  '判断AA数组的值是否小于100
D = D + 1   '得到小于100数组的数
End If
Next I
ReDim BB(1 To D)
D = 0
For I = 1 To C
If AA(I) < 100 Then  '判断AA数组的值是否小于100
D = D + 1
BB(D) = AA(I)    '小于100赋值给BB数组
End If
Next I
For I = 1 To D
Text2.Text = Text2.Text & BB(I) & Space(5)   '显示检测出来的数字。
Next I
End Sub

这个就是任意字符串检测出的数字,其实最后得到的数字是存储在BB数组中,BB数组的个数是D个。

请不要选我!!!
2016-10-29 13:33



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-470409-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.112959 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved