如何在VB.NET中检测字符串中的特定字符?

时间:2011-07-11 23:41:19

标签: vb.net string character detection

好的,所以在我正在VB.NET中工作的程序中,我正在努力使它能够接受一个字符串列表(每个都在不同的行上)。对于我想要在线上的每一行,并将其分为三个部分。第一部分从字符串的开头到字符串中的第一个冒号,第二部分从第一个冒号到at符号,最后一部分从at符号到字符串的结尾。

例如,我会接受一系列行: 你好:世界@耶

我想把它分成三个单独的“hello”,“world”和“yay”字符串。

我如何在VB.NET中做这样的事情?

3 个答案:

答案 0 :(得分:1)

您可以使用Split完成此操作。出于示例目的,我正在重新拆分我可以保存的字符串,因此我不必再次Split它。但是,这样理解起来更简单:

Dim s as String = "hello:world@yay" 'This can be a string from a loop.
Dim hello As String = s.Split(":")(0)  'Get everything before colon.
Dim world As String = s.Split(":")(1).Split("@")(0) 'Get everything after colon, and split the result again, grabbing everything before the amp.
Dim yay As String = s.Split(":")(1).Split("@")(1) 'Get everything after colon, and split the result again, grabbing everything after the amp.

如果您正在阅读文本文件,例如

    Dim objReader As New StreamReader("c:\test.txt")
    Dim s As String = ""
    Dim hello As String
    Dim world As String
    Dim yay As String

    Do
        s = objReader.ReadLine()
        If Not s Is Nothing Then
           hello = s.Split(":")(0)
           world = s.Split(":")(1).Split("@")(0)
           yay = s.Split(":")(1).Split("@")(1)
        End If
    Loop Until s Is Nothing
    objReader.Close()

答案 1 :(得分:0)

使用split command

首先用“:”分割字符串,然后用“@”分割第二个编辑元素

答案 2 :(得分:0)

查看string.indexOf并从中获取