schorschi Geschrieben 20. Juni 2006 Geschrieben 20. Juni 2006 Hallo, ich muß gerade ein suchmuster entwerfen und komme da nicht weiter. Problem ich weiß nicht einmal zur Laufzeit wonach ich suche, ich muß einen String nach einem Schema durchsuchen. Konkret: Ich bekomme einen beliebig langen String geliefert. Irgendwo im String steht eine unbekannte 4 Stellige Zahlenkombination und anschließen ein "\n". Ich müßte also einen Suchstring mit Platzhaltern zusammenstellen um den gelieferten zu durchsuchen. Hier scheitere ich. Der Einsatz von Platzhaltern in z.B. printf ist mir bekannt, zumindest die einfachen wie %s %d. Mit meinem Einfall char vgl_str[]="%c%c%c%c\n"; komme ich nicht zu einer Lösung. Gruß Joerg Zitieren
Kitty82 Geschrieben 20. Juni 2006 Geschrieben 20. Juni 2006 hmm, weiss nicht ob ich da zu kompliziert denke, aber vielleicht hilft dir mein Tipp. Ich würde erstmals nach \n suchen, finde ich eins, würde ich die 4 Zeichen davor überprüfen ob alle Zahlen sind. wenn ja, nochmal zusätzlich die 5. Stelle davor überprüfen. Falls das auch eine Zahl ist, dann das nächste \n suchen. Ist die 5. Stelle keine Zahl, hast du bereits eine Zahlenkombination gefunden. verstehste? :confused: Zitieren
Guybrush Threepwood Geschrieben 20. Juni 2006 Geschrieben 20. Juni 2006 Öhm am Besten erklärst du nochmal genau was du willst bzw was passieren soll, denn wenn du nichtmal zur Laufzeit weißt wonach du suchst, wan willst du es denn wissen bzw. wer sonst soll das wissen? Zitieren
Klotzkopp Geschrieben 20. Juni 2006 Geschrieben 20. Juni 2006 Es gibt in C++ keine eingebaute Funktionalität für das, was du suchst. Entweder machst du es so, wie es Kitty82 vorgeschlagen hat, oder du benutzt eine Bibliothek für reguläre Ausdrücke. Zitieren
schorschi Geschrieben 20. Juni 2006 Autor Geschrieben 20. Juni 2006 Ich werde es dann wohl nach Kittys Vorschlag machen. Guybrush, ich suche im String ein Muster mit einer Zahl. Die Zahl ist mir nicht bekannt und uninteresant, da Sie nicht in den String gehört, Sie wird einfach ungewollt und nicht immer mitgeliefert. Ich hätte praktisch mit einem Muster mit unbekannten Inhalt aber bekanten Aufbau suchen müßen. Dank an euch. Zitieren
Guybrush Threepwood Geschrieben 21. Juni 2006 Geschrieben 21. Juni 2006 Ich verstehe immer noch nicht was du mit "nach etwas unbekanntem Suchen" meinst. Wenn du etwas nicht kennst dann kannst du es nicht suchen. Meinst du vielleicht das erst während das Programm läuft irgendwie herauskommt wonach gesucht werden muss? Ansonsten wenn ich dein Beispiel mit printf da oben richtig deute hilft dir evtl sprintf weiter, aber wirklich verstanden hab ich dich noch nicht :\ Zitieren
Klotzkopp Geschrieben 21. Juni 2006 Geschrieben 21. Juni 2006 Ich verstehe immer noch nicht was du mit "nach etwas unbekanntem Suchen" meinst. Wenn du etwas nicht kennst dann kannst du es nicht suchen.Er kennt nur ein Muster, nicht den tatsächlichen Wert. Er weiß, dass es vier Ziffern und ein Zeilenumbruch sind, aber nicht, welche Ziffern. Zitieren
Guybrush Threepwood Geschrieben 21. Juni 2006 Geschrieben 21. Juni 2006 Achso jetzt hab ichs...nee dann hilft sprintf auch nicht weiter. Zitieren
schorschi Geschrieben 21. Juni 2006 Autor Geschrieben 21. Juni 2006 Ja, danke nochmal. habe mir gestern Nacht 'ne Methode zusammengestrickt.Funzt. Joerg Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.