以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  如果有数字就把后面的去掉,如果没有就跳过!  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=70073)

--  作者:zgjmost
--  发布时间:2015/6/15 15:10:00
--  如果有数字就把后面的去掉,如果没有就跳过!

现在有这样一个需求:

 

如下的一列数据,如果有数字就把后面的去掉,如果没有就跳过!

 

请大师设计一上代码

 

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20150615150640.png
图片点击可在新窗口打开查看

 

这一列是学生信息表中的班名称列


--  作者:大红袍
--  发布时间:2015/6/15 15:16:00
--  
 什么意思,举例说明。
--  作者:yan2006l
--  发布时间:2015/6/15 15:28:00
--  
有个按钮可以删除重复值
--  作者:zgjmost
--  发布时间:2015/6/15 16:00:00
--  

在上面这个表中,第一至三行直接将这一列的值写入    班名称中文   中

 

而从上面第四行开始,要把后面的数字去掉    剩下2012秋专法学    然后写入班名称中文的列中

 

大红袍老师:我不知道我的需求说清楚没?


--  作者:Bin
--  发布时间:2015/6/15 16:01:00
--  
For Each dr As DataRow In DataTables("表B").DataRows
        dr("第一列") =System.Text.RegularExpressions.Regex.match(dr("第一列"),"\\d+[\\u4e00-\\u9fa5]+").Value
Next

这个意思?

--  作者:大红袍
--  发布时间:2015/6/15 16:08:00
--  
For Each dr As DataRow In DataTables("表A").DataRows
    Dim reg As new System.Text.RegularExpressions.Regex("(?<=.*[\\u4e00-\\u9fa5]+)[0-9]+")
    Dim str = reg.replace(dr("第一列"), "")
    dr("第二列") = str
Next

--  作者:zgjmost
--  发布时间:2015/6/15 16:56:00
--  
RegularExpressions.Regex("(?<=.*[\\u4e00-\\u9fa5]+)[0-9]+")
这个是什么意思?好象不常用
--  作者:大红袍
--  发布时间:2015/6/15 17:09:00
--  

 这个是正则表达式。

 

 http://www.baidu.com/baidu?wd=%D5%FD%D4%F2&tn=monline_4_dg

 


--  作者:大红袍
--  发布时间:2015/7/9 16:50:00
--  

Validating事件,代码

 

Dim reg As new System.Text.RegularExpressions.Regex("^[a-z0-9]+([._\\\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$")
If reg.IsMatch(e.Sender.Text) = False Then
    msgbox("格式不符合")
    e.Cancel = True
End If