Contains funktioniert nicht richtig.

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von FAtheone.

    Contains funktioniert nicht richtig.

    Hallo,
    Ich versuche die ganze Zeit mit Contains Links zu filtern , aber irgendwie funktioniert das nicht.

    VB.NET-Quellcode

    1. If fp.EndsWith(".jpeg") Or fp.EndsWith(".png") Or fp.EndsWith(".jpg") Or fp.EndsWith(".jpe") Or fp.EndsWith(".jfif") Or fp.EndsWith(".bmp") Or fp.EndsWith(".tif") Or fp.EndsWith(".doc") Or fp.EndsWith(".rtf") Or fp.EndsWith(".txt") AndAlso Not fp.Contains("log") AndAlso Not fp.Contains("sys") AndAlso Not fp.Contains("art") AndAlso Not fp.Contains("Folder") AndAlso Not fp.Contains("Art") Then Tmp.add(fp)


    Leider werden immernoch Links in denen Folder oder Art vorkommt geaddet.

    Woran liegt das?
    -Mache Keinen Einzeiler
    -Nutze for.. Each und eine Statische Liste:

    VB.NET-Quellcode

    1. Static Extensions As List(Of String)
    2. Static ExcludePatterns As List(Of String)
    3. If Extensions Is Nothing Then 'Extensions mit "png" etc. befüllen
    4. If ExcludePatterns Is Nothing Then '...
    5. Dim validFile As Boolean = False
    6. For Each ext As String In Extensions
    7. If fileInfo.Extension.ToLower() = ext Then validFile = True : Exit For
    8. Next
    9. If validFile Then 'Nur weiter, wenn Extension schon mal stimmt.
    10. For Each excl As String In ExcludePatterns
    11. If fileInfo.FileName.ToLower().Contains(excl) Then validFile = False : Exit For
    12. Next
    13. If validFile Then 'Auch kein Exclude-Pattern enthalten...
    14. tmp.Add(fileInfo.Path) 'o.ä.
    15. End If
    16. End If


    Case Insensitive für die Patterns/ Extensions; Die Liste mit Lowercase befüttern.