用循环判断字符的ASCII码是否是数字。

解决方案 »

  1.   

    不知道你所谓的“m,n,x,y不固定”是指怎么个不固定,是在程序运行时由用户输入,还是从头到尾只有子串s,而不知m,n,x,y? 这可是有区别的.
    如果是前者,只要:  
    Dim i As Integer, j As Integer
    Dim astr1 As String, astr2 As String
    Dim astr As String
        i = (m) '这是得到用户输入的m值
        j = (n)'这是得到用户输入的n值
        
        astr = "ABCdn6470Abc123"
        
        astr1 = Left(astr, i)
        astr2 = Mid(astr, i + 1, j)这使,astr1与astr2就是你要的拉.如果是后者,就得:
    Dim i As Integer, j As Integer, t As Integer, k As Integer
    Dim astr1 As String, astr2 As String
    Dim astr As String
        
        astr = "ABCdn6470Abc123"
        
        j = Len(astr)
        
        k = 0
        For i = 1 To j
            t = Asc(Mid(astr, i, 1))
            If t <= 57 And t >= 48 Then
                astr2 = astr2 & Mid(astr, i, 1)
                k = 1
            Else
                If k <> 0 Then Exit For
                astr1 = astr1 & Mid(astr, i, 1)
            End If
        Next
    这使,astr1与astr2就是你要的拉.