以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]小白又来求教了。。关于表中字符的转换  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=27971)

--  作者:不倒的翁
--  发布时间:2013/1/15 15:31:00
--  [求助]小白又来求教了。。关于表中字符的转换

请教如何将第二列的值自动转换为第一列那样的值。。。。

公司导出的数据括号太多了。想了半天没想出怎么转换这个值。。

原先设想用Contains的但格子里的数据前半段都是一样的。。。

请教高手。。。谢谢了。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目4.table


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

--  作者:lin_hailun
--  发布时间:2013/1/15 16:14:00
--  
 代码,如下。

For Each r As Row In Tables("表A").Rows
    r("第三列") = System.Text.RegularExpressions.Regex.Replace(r("第二列"), "\\({1}[0-9a-zA-Z]{2,}(\\([a-zA-Z]\\))?\\){1}", "")
Next


--  作者:不倒的翁
--  发布时间:2013/1/15 16:19:00
--  

感谢林老师。下班回去试试。

你的帖子要破5000了。。。。


图片点击可在新窗口打开查看此主题相关图片如下:未命名.png
图片点击可在新窗口打开查看

--  作者:不倒的翁
--  发布时间:2013/1/15 17:56:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看
 林老师。。。。
你给的代码能替换前面所给的项目中的字符了。
但遇到其他的字符就不行。。。
正则表达式去看了看。。看的都头晕了。。。。
[此贴子已经被作者于2013-1-15 17:56:01编辑过]

--  作者:lin_hailun
--  发布时间:2013/1/15 18:15:00
--  
 算了,没有办法取巧。踏实弄吧。

For Each r As Row In Tables("表A").Rows
    Dim idx As Integer = r("第二列").indexof(")")
    If idx > r("第二列").Length / 2 Then
        idx = r("第二列").indexof("(") - 1
    End If
    r("第三列") = left(r("第二列"), idx+1)
Next

--  作者:不倒的翁
--  发布时间:2013/1/15 18:27:00
--  
 林老师。首先谢谢你能这么热心的帮我。感谢。
我看了下你刚写的代码。
写代码这活的确要会转弯,还要运用娴熟才能写出来的。
精辟啊。