比如,一共8位数
我设定一个初始值例如ABCDAAAA然后让他实现递增,递增方式是最后一位A-Z 然后0-9然后第二位也按照这样递增怎么做。
我想应该用增则。但是不知道应该具体怎么写。字母都是大写。
请给出具体写法。谢谢大家

解决方案 »

  1.   

    例如
    ABCDAAAA
    ABCDAAAB
    ......
    ABCDAAAZ
    ABCDAAA0
    ....
    ABCDAAA9
    ABCDAABA
    ......
    ABCDAABZ
    ....
    这样递增怎么做。我百度了没找到啊
      

  2.   

    http://bbs.csdn.net/topics/390130084http://bbs.csdn.net/topics/370051667至少我都回答过好几次,为啥你搜不到。
      

  3.   

    首先扔掉那个啥也找不到的百度吧。好好研究下Google怎么用,能把Google用会,哪怕啥也不学,你也立刻比那些连搜索引擎都不会用的人高一个层次了。搜索引擎是连非计算机专业背景的人都应该会用的,何况你号称还是写程序的。
      

  4.   

    解决了。3Q 我确实百度了。找了几个。没有什么参考价值。CAOZHY写的我试过了。很好很牛叉...
    ..............虽然被人鄙视了。唉.好吧我是文盲.
      

  5.   

    来CSDN 头一次这么痛快解决问题的。感谢版主caozhy  感谢 ZF  感谢各种TV
      

  6.   

     ''' <summary>
        ''' 将指定字符串递增1
        ''' </summary>
        ''' <param name="strString">要递增的字符串</param>
        ''' <returns>返回递增后的字符串</returns>
        ''' <res></res>
        Public Shared Function GetNextString(ByVal strString As String) As String
            If strString Is Nothing OrElse strString.Length < 1 Then Return ""
            Dim strResult As String = ""
            Dim strAllLower As String = "0123456789abcdefghijklmnopqrstuvwxyz"
            Dim arrChar() As Char = strString.ToCharArray()
            Dim strTemp As String = ""
            For intI As Integer = arrChar.Length - 1 To 0 Step -1
                If strAllLower.Contains(arrChar(intI)) OrElse strAllLower.ToUpper.Contains(arrChar(intI)) Then
                    Select Case Char.ToLower(arrChar(intI))
                        Case "z"
                            arrChar(intI) = "0"
                            If intI = 0 Then
                                strResult = "1" & arrChar(intI) & strResult
                            Else
                                strTemp = GetNextString(strString.Substring(0, intI))
                                strResult = strTemp & arrChar(intI) & strResult
                                Exit For
                            End If
                        Case Else
                            If Char.IsLower(arrChar(intI)) Then
                                arrChar(intI) = strAllLower.Substring(strAllLower.IndexOf(arrChar(intI)) + 1, 1)
                            Else
                                arrChar(intI) = strAllLower.Substring(strAllLower.IndexOf(Char.ToLower(arrChar(intI))) + 1, 1).ToUpper
                            End If
                            If intI = 0 Then
                                strResult = arrChar(intI) & strResult
                            Else
                                strResult = strString.Substring(0, intI) & arrChar(intI) & strResult
                            End If
                            Exit For
                    End Select
                Else
                    strResult = arrChar(intI) & strResult
                End If        Next
            Return strResult
        End Function    ''' <summary>
        ''' 将指定字符串的数字部分递增1
        ''' </summary>
        ''' <param name="strString">要递增的字符串</param>
        ''' <returns>返回递增后的字符串</returns>
        ''' <res></res>
        Public Shared Function GetNextStringNumber(ByVal strString As String) As String
            If strString Is Nothing OrElse strString.Length < 1 Then Return ""
            Dim strResult As String = ""
            Dim strAllLower As String = "0123456789"
            Dim arrChar() As Char = strString.ToCharArray()
            Dim strTemp As String = ""
            For intI As Integer = arrChar.Length - 1 To 0 Step -1
                If strAllLower.Contains(arrChar(intI)) Then
                    Select Case Char.ToLower(arrChar(intI))
                        Case "9"
                            arrChar(intI) = "0"
                            If intI = 0 Then
                                strResult = "1" & arrChar(intI) & strResult
                            Else
                                strTemp = GetNextStringNumber(strString.Substring(0, intI))
                                strResult = strTemp & arrChar(intI) & strResult
                                Exit For
                            End If
                        Case Else
                            arrChar(intI) = strAllLower.Substring(strAllLower.IndexOf(arrChar(intI)) + 1, 1)
                            If intI = 0 Then
                                strResult = arrChar(intI) & strResult
                            Else
                                strResult = strString.Substring(0, intI) & arrChar(intI) & strResult
                            End If
                            Exit For
                    End Select
                Else
                    strResult = arrChar(intI) & strResult
                End If        Next
            Return strResult
        End Function