以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  请帮助解决:如何把纱号名称列的产品号自动变为品号列的数字?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=26614)

--  作者:lyfxybc
--  发布时间:2012/12/10 12:32:00
--  请帮助解决:如何把纱号名称列的产品号自动变为品号列的数字?
请帮助解决:如何把纱号名称列的产品号自动变为品号列的数字?
图片点击可在新窗口打开查看此主题相关图片如下:160.jpg
图片点击可在新窗口打开查看

--  作者:lin_hailun
--  发布时间:2012/12/10 12:53:00
--  
 可以参考这段代码,放到命令窗口执行一遍。

Dim data As String = "abc11234-455555cccdddrrr"
\'Dim data As String = "abc11234-455555-cccdddrrr"
Dim catchs As New System.Text.RegularExpressions.Regex("-{1}[0-9]+")
Dim mc As System.Text.RegularExpressions.MatchCollection = catchs.Matches(data)
msgbox(mc(0).Value.SubString(1))

--  作者:lyfxybc
--  发布时间:2012/12/10 18:18:00
--  

谢谢,根据您给的代码问题已解决。

代码如下:代码放在

DataColChanged里面

 

Select Case e.DataCol.Name
    Case "产品名称"
        If e.NewValue Is Nothing Then Return
        Dim data As String = e.NewValue
        Dim catchs As New System.Text.RegularExpressions.Regex("-{1}[0-9]+")
        Dim mc As System.Text.RegularExpressions.MatchCollection = catchs.Matches(data)
        If mc.count > 0 Then e.DataRow("品号") = mc(0).value*(-1)
End Select