Cara: Mengkueri Karakter dalam String (LINQ) (Visual Basic)

Karena kelas String mengimplementasikan antarmuka IEnumerable<T> generik, string dapat dikueri sebagai urutan karakter. Namun, ini bukan merupakan penggunaan umum LINQ. Untuk operasi pencocokan pola yang kompleks, gunakan kelas Regex.

Contoh

Contoh berikut mengkueri string untuk menentukan jumlah digit numerik yang dikandungnya. Perhatikan bahwa kueri "digunakan kembali" setelah dijalankan pertama kali. Hal ini dimungkinkan karena kueri itu sendiri tidak menyimpan hasil aktual.

Class QueryAString

    Shared Sub Main()

        ' A string is an IEnumerable data source.
        Dim aString As String = "ABCDE99F-J74-12-89A"

        ' Select only those characters that are numbers
        Dim stringQuery = From ch In aString
                          Where Char.IsDigit(ch)
                          Select ch
        ' Execute the query
        For Each c As Char In stringQuery
            Console.Write(c & " ")
        Next

        ' Call the Count method on the existing query.
        Dim count As Integer = stringQuery.Count()
        Console.WriteLine(System.Environment.NewLine & "Count = " & count)

        ' Select all characters before the first '-'
        Dim stringQuery2 = aString.TakeWhile(Function(c) c <> "-")

        ' Execute the second query
        For Each ch In stringQuery2
            Console.Write(ch)
        Next

        Console.WriteLine(System.Environment.NewLine & "Press any key to exit")
        Console.ReadKey()
    End Sub
End Class
' Output:
' 9 9 7 4 1 2 8 9
' Count = 8
' ABCDE99F

Mengkompilasi kode

Buat proyek aplikasi konsol Visual Basic, dengan Imports pernyataan untuk namespace Layanan System.Linq.

Lihat juga