Foxtable(狐表)用户栏目专家坐堂 → 这样的字窜要如何拆分呢?


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

主题:这样的字窜要如何拆分呢?

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


加好友 发短信
等级:五尾狐 帖子:1197 积分:7056 威望:0 精华:0 注册:2013/3/4 18:02:00
这样的字窜要如何拆分呢?  发帖心情 Post By:2013/8/15 15:06:00 [只看该作者]

Dim s As String = "打瞌睡|BH303+BH105+BH188"

拆分成

BH303

BH105

BH188

...

就是把|后以+号为分隔符有多少分出多少个来


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


加好友 发短信
等级:五尾狐 帖子:1093 积分:6682 威望:0 精华:0 注册:2013/7/1 9:05:00
  发帖心情 Post By:2013/8/15 15:09:00 [只看该作者]

Dim s As String = "打瞌睡|BH303+BH105+BH188"
s= s.Replace("+","|")
Dim ss() As String = s.split("|")
For Each s1 As String In ss
    output.show(s1)
Next

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


加好友 发短信
等级:五尾狐 帖子:1197 积分:7056 威望:0 精华:0 注册:2013/3/4 18:02:00
  发帖心情 Post By:2013/8/15 15:10:00 [只看该作者]

以下是引用有点酸在2013-8-15 15:09:00的发言:
Dim s As String = "打瞌睡|BH303+BH105+BH188"
s= s.Replace("+","|")
Dim ss() As String = s.split("|")
For Each s1 As String In ss
    output.show(s1)
Next

TKS!


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


加好友 发短信
等级:五尾狐 帖子:1197 积分:7056 威望:0 精华:0 注册:2013/3/4 18:02:00
  发帖心情 Post By:2013/8/15 15:44:00 [只看该作者]

再问个问题

Dim s As String = "打瞌睡+我很困|BH303(1)+BH105(2)+BH188(3)"

怎么拆分成

BH303 1

BH105 2

BH188 3

这样子呢?


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


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

Dim s As String = "打瞌睡+我很困|BH303(1)+BH105(2)+BH188(3)"
Dim str() As String = s.Replace("|","+").Split("+")
For Each s1 As String In str
    If s1.StartsWith("BH") Then
        Output.Show(s1.Replace("("," ").Replace(")",""))
    End If
Next

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/15 16:16:00 [只看该作者]

也可以使用正则表达式实现哦

Dim s As String = "打瞌睡+我很困|BH303(1)+BH105(2)+BH188(3)"
Dim mh As  System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(s,"[A-Za-z0-9]{4,6}\([0-9]{1,2}\)")
Do While True
    If mh.Tostring()="" Then
        Exit Do
    End If
    output.show(System.Text.RegularExpressions.Regex.Match(mh.Tostring(),"[A-Za-z0-9]{4,6}").ToSTring()  & "   " & System.Text.RegularExpressions.Regex.Match(mh.Tostring,"\([0-9]{1,2}\)").ToSTring().trim("(").trim(")"))
    mh=mh.NextMatch
Loop

 回到顶部