Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Étant donné que la String classe implémente l’interface générique IEnumerable<T> , n’importe quelle chaîne peut être interrogée en tant que séquence de caractères. Toutefois, il ne s’agit pas d’une utilisation courante de LINQ. Pour les opérations de correspondance de modèles complexes, utilisez la Regex classe.
Exemple :
L’exemple suivant interroge une chaîne pour déterminer le nombre de chiffres qu’il contient. Notez que la requête est « réutilisée » après son exécution la première fois. Cela est possible, car la requête elle-même ne stocke pas de résultats réels.
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
Compiler le code
Créez un projet d’application console Visual Basic, avec une Imports instruction pour l’espace de noms System.Linq.