以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  表达式问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=68607)

--  作者:blsu33
--  发布时间:2015/5/21 10:22:00
--  表达式问题

老师 这个代码 可以怎么写吗

 

For Each dr In dt.Select("角色 like  \'\\\' & \' & e.NewText & \' Or 角色 Like \' & e.NewText & \' & \'\\\' " )\'重命名分组
            dr("角色") =dr("角色") .Replace(e.NewText,"")

 Next


--  作者:大红袍
--  发布时间:2015/5/21 10:23:00
--  

直接写出你的需求。

 

角色列的内容如何定义


--  作者:blsu33
--  发布时间:2015/5/21 10:28:00
--  

挺迷惑怎么改

角色列构成

 

经理/张三

经理/张三丰

财务经理/张三丰

 

角色里面重命名 需要把张三改成 e.NewText 李四 可是 张三丰也会被改  应该怎么写呢


--  作者:Bin
--  发布时间:2015/5/21 10:31:00
--  

For Each dr In dt.Select("角色 like  \'\\" & e.NewText & "%\' Or 角色 Like \'%" & e.NewText & "\\\' or  角色 Like \'%\\" & e.NewText & "\\%\' or 角色 =\'" & e.NewText & "\'" )\'重命名分组

            dr("角色") =dr("角色") .Replace(e.NewText,"")

 Next


这个意思?


--  作者:blsu33
--  发布时间:2015/5/21 10:39:00
--  

图片点击可在新窗口打开查看 就是这样


--  作者:大红袍
--  发布时间:2015/5/21 10:41:00
--  

 你代码本来就有问题,不明白你想表达什么。大致这样写

 

Dim nstr As String = ""
For Each s As String In dr("角色").Split("/")
    If s = e.OldText Then
        nstr &= e.NewText & "/"
    Else
        nstr &= s & "/"
    End If
Next

dr("角色") = nstr.Trim("/")

 

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

 

或者换一种思路,比如

 

经理/张三

经理/张三丰

 

都加入一个字符,变成

 

经理/张三/

经理/张三丰/

 

这样,张三/ 就是唯一的了