用mid循环提取出单个字符,判断是数字后连接入字符串!

解决方案 »

  1.   

    Function GetNumber(StrFrom as String) as long
    Dim i as integer ,j as integer
    dim strTemp as string,strTemp2  as string
    for i=1 to len(strFrom)
      strTemp=mid(strFrom,i,i+1)
      if Asc(strtemp)=> Asc('0') and Asc(strtemp)<= Asc('9') then
         strtemp2=strtemp
      end if
    next i
    GetNumber=val(strtemp2)
    end Function
    --------------------------
    Usage:  a=GetNumber("af34535fsadf3543")=345353543
      
    我在网吧写的,Acs()函数可能写错了,他的作用是将某个字符转换成ASCII码。给分给分!!!!
      

  2.   

    楼上的小兄弟,你说的这个方法我知道,我想知道有没有VB自带的函数可以实现
    你的函数写错了,正确的应该象下面这样写,不过还是谢谢你 :)
    Function GetNumber(StrFrom As String) As Long
    Dim i As Integer
    Dim strTemp As String
    Dim strTemp2 As String
    For i = 1 To Len(StrFrom)
      strTemp = Mid(StrFrom, i, 1)
      If strTemp >= "0" And strTemp <= "9" Then
         strTemp2 = strTemp2 & strTemp
      End If
    Next i
    GetNumber = Val(strTemp2)
    End Function