Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a példa bemutatja, hogyan használható LINQ-lekérdezés egy adott szó előfordulásainak megszámlálására egy sztringben. Vegye figyelembe, hogy a szám végrehajtásához először a Split metódust hívjuk meg szavak tömbjének létrehozásához. A metódusnak teljesítményköltsége Split van. Ha a sztring egyetlen művelete a szavak megszámlálása, érdemes inkább a Matches metódusokat használni IndexOf . Ha azonban a teljesítmény nem kritikus probléma, vagy már felosztotta a mondatot, hogy más típusú lekérdezéseket hajthasson végre rajta, akkor érdemes a LINQ használatával megszámolni a szavakat vagy kifejezéseket is.
példa
Class CountWords
Shared Sub Main()
Dim text As String = "Historically, the world of data and the world of objects" &
" have not been well integrated. Programmers work in C# or Visual Basic" &
" and also in SQL or XQuery. On the one side are concepts such as classes," &
" objects, fields, inheritance, and .NET Framework APIs. On the other side" &
" are tables, columns, rows, nodes, and separate languages for dealing with" &
" them. Data types often require translation between the two worlds; there are" &
" different standard functions. Because the object world has no notion of query, a" &
" query can only be represented as a string without compile-time type checking or" &
" IntelliSense support in the IDE. Transferring data from SQL tables or XML trees to" &
" objects in memory is often tedious and error-prone."
Dim searchTerm As String = "data"
' Convert the string into an array of words.
Dim dataSource As String() = text.Split(New Char() {" ", ",", ".", ";", ":"},
StringSplitOptions.RemoveEmptyEntries)
' Create and execute the query. It executes immediately
' because a singleton value is produced.
' Use ToLower to match "data" and "Data"
Dim matchQuery = From word In dataSource
Where word.ToLowerInvariant() = searchTerm.ToLowerInvariant()
Select word
' Count the matches.
Dim count As Integer = matchQuery.Count()
Console.WriteLine(count & " occurrence(s) of the search term """ &
searchTerm & """ were found.")
' Keep console window open in debug mode.
Console.WriteLine("Press any key to exit.")
Console.ReadKey()
End Sub
End Class
' Output:
' 3 occurrence(s) of the search term "data" were found.
A kód összeállítása
Hozzon létre egy Visual Basic konzolalkalmazás-projektet a System.Linq névtér utasításával Imports .