以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]如何取最后3个字符?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=66009)

--  作者:cqlpjks
--  发布时间:2015/3/27 14:31:00
--  [求助]如何取最后3个字符?
Substring(1,3)是从第2个字符开始取3个字符,那取最后3个字符如何写代码?谢谢!
--  作者:lala
--  发布时间:2015/3/27 14:38:00
--  
Dim s As String = "123456"
Output.Show(s.SubString(len(s)-3,3))

--  作者:有点甜
--  发布时间:2015/3/27 14:50:00
--  
Dim s As String = "123456"
Output.Show(right(s,3))

--  作者:cqlpjks
--  发布时间:2015/3/27 15:15:00
--  

For Each dr As DataRow In DataTables("成绩库").DataRows
    If dr.IsNull("类别代码") Then
        dr("编号") = Nothing
    Else
        Dim dj As String = dr("等级1")
        Dim lb As String = dr("类别代码")
        Dim max As String
        Dim idx As Integer
        Dim s As String = dr("编号")
        max = dr.DataTable.Compute("Max(编号)", "类别代码 = \'" & lb & "\'") \'取得类别该等级的最大编号
        If max > "" Then \'如果存在最大编号
            idx = CInt(max.Substring(5,3)) + 1 \'获得最大编号的后三位顺序号,并加1(从第6个字符开始取3个字符)
        Else
            idx = 1 \'否则顺序号等于1
        End If
        dr("编号") = lb & Format(idx,"000")
    End If
Next

 

 

红色代码表示从第6个字符开始取3个字符,我要不计前面有多少个字符,只取最后3个字符,怎么修改红色代码?谢谢!


--  作者:有点甜
--  发布时间:2015/3/27 15:16:00
--  
idx = CInt(right(max,3)) + 1
--  作者:cqlpjks
--  发布时间:2015/3/27 15:21:00
--  
谢谢!