Textsuche unabhängig vom Gross und Kleinschreibung

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Genelec.

    Textsuche unabhängig vom Gross und Kleinschreibung

    Hallo,
    ich suche einen einfachen Weg in Texten Strings zu suchen und zwar unabhängig von Groß und Kleinschreibung sowie auch innerhalb von Wörtern.
    Gibt es da eine vorgefertigte Methode oder muss ich da basteln ? ?(
    Danke für Anregungen !
    Hallo Genelec,

    um nicht Case Sensitiv zu suchen, kannst du - für die Suche - die Strings mit .ToLower oder .ToHigher in Groß- bzw. Kleinbuchstaben umwandeln.

    Wenn du auch Strings anhand von Teilstrings finden willst, gibt es den Like-Operator.
    Für diesen können auch Wildcards wie * und ? eingesetzt werden.

    Gruss

    mikeb69
    oder .ToHigher
    finde nur .ToUpper..., ist wohl das was du meinst ?
    Marcel
    /e: Geht leider nicht so wie erwartet da ALLE Buchstaben groß oder klein gesetzt werden. Wenn ich aber nun einen Suchbegriff mit dem ersten Buchstaben klein schreibe ( also z.B. "text" Statt "Text" ) findet er es nicht. Allerding findet er jetzt "ext".
    Also muss ich doch noch basteln und .ToLower und .ToUpper auf den Anfangsbuchstaben begrenzen...

    Es gibt eine Bearbeitenfunktion! MfG gs93

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „gs93“ ()

    Wieso, es ist doch vollkommen egal wenn in der Suche das ganze Wort komplett klein ist oder nicht?
    Ist ja klar wenn du text mit Text vergleichst das es dann nciht geht, wenn du aber text.tolower und Text.tolower vergleichst dann ergibt das ganze wieder true.
    Ich habe ja nicht nur einen Suchbegriff, es geht ja um eine Suchfunktion d.h. der Benutzer kann den Suchbegriff frei wählen.
    Daher bleibt wohl nix anderes übrig als einen zusammengesetzten String in allen Varianten zu suchen
    so ala

    if mid(Suchstring,1,1).toUpper OR mid(Suchstring,1,1).toLower AND mid(Suchstring,2,len(suchstring)-1) .....


    aja ein contains muss ich ja auch noch reinwursteln.

    Wird es jetzt klarer ?

    Dafür suche ich eine Vereinfachung
    Ne so ganz nicht^^

    Also wenn ich dich richtige verstehe:
    Der user gibt was zum suchen ein zb: Ich will Tee
    Diesen Suchstring packst du in eine Variable:

    VB.NET-Quellcode

    1. dim suche as = "Ich will Tee"

    Dann hast du in ner Variable den text den du durchsuchen möchtest.

    VB.NET-Quellcode

    1. dim meinText as string = "asdjldsakofjajfoiejpoewfjoijioasdfjijnaidjosfo usw....."

    und wenn du jetzt so suchst:

    VB.NET-Quellcode

    1. if meinText.tolower.Contains(suche.tolower) then
    2. 'dann mache was.....
    3. end if


    Und so bin ich doch dem Problem aus dem Weg gegangen mit groß und Kleinschreibung.

    Eisfuchs schrieb:

    VB.NET-Quellcode

    1. if meinText.tolower.Contains(suche.tolower) then
    2. 'dann mache was.....
    3. end if


    Und so bin ich doch dem Problem aus dem Weg gegangen mit groß und Kleinschreibung.


    Ahhhh, das ist die entscheidende Idee, ich wandel den Vergleichstring auch in Kleinschrift um und muss mich dann nicht mehr um einzelne Buchstaben kümmern. Clever ! :thumbup:

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „mikeb69“ ()