Foxtable(狐表)用户栏目专家坐堂 → [求助]如何正则取得字符串中的数字?


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

主题:[求助]如何正则取得字符串中的数字?

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


加好友 发短信
等级:幼狐 帖子:110 积分:1231 威望:0 精华:0 注册:2014/1/20 17:38:00
[求助]如何正则取得字符串中的数字?  发帖心情 Post By:2014/9/21 11:22:00 [只看该作者]

有一字符串:654515956(2)、654514850(17)、654515951(1),想将括号内的数字取出来,成为"2、17、1"

如何弄?


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


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

 Dim str As String = "654515956(2),654514850(17),654515951(1)"
Dim reg As new System.Text.RegularExpressions.Regex("(?<=[0-9]*\({1})[0-9]+(?=\){1})")
Dim mc As object = reg.Matches(str)
For i As Integer = 0 To mc.count - 1
    msgbox(mc(i).Value)
Next

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


加好友 发短信
等级:幼狐 帖子:110 积分:1231 威望:0 精华:0 注册:2014/1/20 17:38:00
  发帖心情 Post By:2014/9/21 11:46:00 [只看该作者]

谢谢老师。但我不想这么复杂,不是取出单个数字,是想变成一个字符串"2、17、1",该如何弄呢?


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


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

 Dim str As String = "654515956(2),654514850(17),654515951(1)"
Dim reg As new System.Text.RegularExpressions.Regex("[0-9]*\({1}")
str = reg.Replace(str, "").replace(")", "")
msgbox(str)

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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/9/21 12:41:00 [只看该作者]

Dim str As String() = "654515956(2)、654514850(17)、654515951(1)".Split("、")
Dim s As String
For i As Integer = 0 To str.Length - 1
   s + = str(i).Remove(0, 10).Replace(")","、")
Next
MessageBox.Show(s.Trim("、"))

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


加好友 发短信
等级:三尾狐 帖子:648 积分:6060 威望:0 精华:0 注册:2013/10/22 12:15:00
  发帖心情 Post By:2014/9/21 15:28:00 [只看该作者]

学习

 回到顶部