以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  这句代码好像把中间的数字也去掉了,我只要把班名称后面的数字去掉,怎么改?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=70467)

--  作者:zgjmost
--  发布时间:2015/6/22 19:04:00
--  这句代码好像把中间的数字也去掉了,我只要把班名称后面的数字去掉,怎么改?

For Each dr As DataRow In DataTables("学生信息表").DataRows
    Dim reg As new System.Text.RegularExpressions.Regex("(?<=.*[\\u4e00-\\u9fa5]+)[0-9]+")
    Dim str = reg.replace(dr("班名称"), "")
    dr("班名称中文") = str
Next

 

这句代码好像把中间的数字也去掉了,我只要把班名称后面的数字去掉,怎么改?


--  作者:yan2006l
--  发布时间:2015/6/22 20:18:00
--  
那么高深的代码不懂,用狐爸的字符串语法:
从右到左遍历一下字符串,遇到非数字就停止,然后重新截取这个位置的字符串

--  作者:dj68301367
--  发布时间:2015/6/22 20:21:00
--  
顶起来,求解释
--  作者:黄训良
--  发布时间:2015/6/22 22:14:00
--  

参考这儿:

http://www.cnblogs.com/liangsetian/archive/2011/07/05/2098280.html


--  作者:大红袍
--  发布时间:2015/6/23 11:42:00
--  

Dim str As String = "2014中文10班34343434343434"
Dim reg As new System.Text.RegularExpressions.Regex("(?<=.*[\\u4e00-\\u9fa5]+)[0-9]+$")
str = reg.replace(str, "")
msgbox(str)

-----------------

 

For Each dr As DataRow In DataTables("学生信息表").DataRows
    Dim reg As new System.Text.RegularExpressions.Regex("(?<=.*[\\u4e00-\\u9fa5]+)[0-9]+$")
    Dim str = reg.replace(dr("班名称"), "")
    dr("班名称中文") = str
Next