Foxtable(狐表)用户栏目专家坐堂 → [求助]怎样去除单元格中的数字字母符号


  共有3758人关注过本帖树形打印复制链接

主题:[求助]怎样去除单元格中的数字字母符号

帅哥哟,离线,有人找我吗?
qjm107
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:196 积分:1979 威望:0 精华:0 注册:2012/11/8 14:15:00
[求助]怎样去除单元格中的数字字母符号  发帖心情 Post By:2018/9/25 22:48:00 [只看该作者]

各位专家们
      现在我想请教,在我上传的附件中,混杂地址列含有字母数字及其他符号,怎样在对应的全新地址列中,把混杂地址中的字母数字符号全部去除,只保留汉字?

 回到顶部
帅哥哟,离线,有人找我吗?
qjm107
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:196 积分:1979 威望:0 精华:0 注册:2012/11/8 14:15:00
  发帖心情 Post By:2018/9/25 22:49:00 [只看该作者]

各位专家们
      现在我想请教,在我上传的附件中,混杂地址列含有字母数字及其他符号,怎样在对应的全新地址列中,把混杂地址中的字母数字符号全部去除,只保留汉字?
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:去除字母数字符号.table


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/25 23:13:00 [只看该作者]

datacolchanged事件

If e.DataCol.Name = "混杂地址" Then
    If e.NewValue > "" Then
        Dim pattern As String = "[^[\u4e00-\u9fa5]*]*"
        e.DataRow("全新地址") = System.Text.RegularExpressions.Regex.Replace(e.NewValue, pattern ,"")
    Else
        e.DataRow("全新地址") = Nothing
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
qjm107
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:196 积分:1979 威望:0 精华:0 注册:2012/11/8 14:15:00
  发帖心情 Post By:2018/9/30 21:21:00 [只看该作者]

有点蓝
    你好,请问上面代码中的^[\u4e00-\u9fa5]*表示什么?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/10/4 10:47:00 [只看该作者]

以下是引用qjm107在2018/9/30 21:21:00的发言:
有点蓝
    你好,请问上面代码中的^[\u4e00-\u9fa5]*表示什么?

 

表示中文字符的一个集合

 

http://caibaojian.com/zhongwen-regexp.html

 

https://baike.baidu.com/item/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F/1700215?fr=aladdin

 


 回到顶部
帅哥哟,离线,有人找我吗?
qjm107
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:196 积分:1979 威望:0 精华:0 注册:2012/11/8 14:15:00
  发帖心情 Post By:2018/10/8 22:06:00 [只看该作者]

谢谢你,知道了,但现在我又有一个新问题了,如在我上传的附件的表B中,有“价格”“价格数字”两列,怎样把价格中的汉字去掉,也就是只把价格中的数字提取出来,相应地放入“价格数字”一列,我写的代码如下,但却实现不了,请问错误出在哪儿?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:去除字母数字符号.table



If e.DataCol.Name = "价格" Then
    If e.NewValue > "" Then
        Dim pattern As String = "[^\x00-\xff]"
        e.DataRow("价格数字") = System.Text.Select.Substring(e.NewValue, pattern ,"")
    Else
        e.DataRow("价格数字") = Nothing
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
qjm107
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:196 积分:1979 威望:0 精华:0 注册:2012/11/8 14:15:00
  发帖心情 Post By:2018/10/8 22:10:00 [只看该作者]

代码也是写入datacolchanged事件中的

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/8 22:14:00 [只看该作者]

Dim pattern As String = "[\u4e00-\u9fa5]"

 回到顶部
帅哥哟,离线,有人找我吗?
qjm107
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:196 积分:1979 威望:0 精华:0 注册:2012/11/8 14:15:00
  发帖心情 Post By:2018/10/8 22:28:00 [只看该作者]

你好,有点甜,在我上传的附件的表C中,有“价格”“价格数字”——“元”“角”“分”多层表头的三列,请问怎样把价格列中的数字,对应的提取到元角分列中?我模仿
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:去除字母数字符号.table

写出的代码如下,但结果出不来,请问错误在哪儿?

For Each r As Row In Tables("表C").rows
    If r.isnull("价格") = False
        Dim s As String = r("价格")
        Dim p1 As String = "[""].*元"
        
Dim p2 As String = "[元].*角"
        Dim p3 As String = "[角].*分"
Dim rgx = new System.Text.RegularExpressions.Regex(p1,p2, p3,  System.Text.RegularExpressions.RegexOptions.IgnoreCase)
        Dim res As String = rgx.Match(s).Value
        r("价格数字_元") = res.Replace("","").Replace("元","")
        
r("价格数字_角") = res.Replace(""元"").Replace("角","")
        r("价格数字_分") = res.Replace(""角"").Replace("分","")
End If
Next

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/8 22:45:00 [只看该作者]

Dim s As String = "3元5角2分"
Dim ar() As String = s.Split(new Char(){"元","角","分"})
msgbox(ar(0))
msgbox(ar(1))
msgbox(ar(2))

 回到顶部
总数 13 1 2 下一页