以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  这样的字窜要如何拆分呢?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=39099)

--  作者:晕了快扶我
--  发布时间:2013/8/15 15:06:00
--  这样的字窜要如何拆分呢?

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

拆分成

BH303

BH105

BH188

...

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


--  作者:有点酸
--  发布时间: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

--  作者:晕了快扶我
--  发布时间: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!


--  作者:晕了快扶我
--  发布时间:2013/8/15 15:44:00
--  

再问个问题

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

怎么拆分成

BH303 1

BH105 2

BH188 3

这样子呢?


--  作者:lsy
--  发布时间: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
--  发布时间: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