RegEx findet nicht die Hälfte

German support forum

Moderators: Hacker, Stefan2, white

Post Reply
User avatar
hardy
Junior Member
Junior Member
Posts: 2
Joined: 2003-12-15, 08:26 UTC

RegEx findet nicht die Hälfte

Post by *hardy »

:?: In TC 6.01 funktioniert die Suche mittels Regular Expression nicht gut in Binär Dateien. Wenn ich z.B. eine Word oder eine PNG Datei im Lister öffne und nach irgendwelchen (alphabetischen) Zeichen suche, dann findet die normale Suchfunktion mehr Einträge als die RegEx-Suche. Die RegEx-Suche findet ein paar Vorkommnisse aber nicht alle. Woran liegt das?

Wenn ich allerdings den Datei-Inhalt im Lister in eine neue Datei kopiere findet auch RegEx alle Vorkommnisse.

Ich fände die RegEx-Suche gerade in Word-Dokumenten gut, um zu überprüfen, ob da "geheime" Daten gespeichert sind, da dort diese geheimen Nachrichten häufig durch "Sonderzeichen" verstückelt sind.

än schönä
Hardy
User avatar
Hacker
Moderator
Moderator
Posts: 13142
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

Ich fände die RegEx-Suche gerade in Word-Dokumenten gut, um zu überprüfen, ob da "geheime" Daten gespeichert sind, da dort diese geheimen Nachrichten häufig durch "Sonderzeichen" verstückelt sind.
Zu diesem Thema - die Ansicht, die du kriegst, nachdem du beim betrachten einer Word Datei die 6 druckst, konnte helfen.

HTH
Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50806
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

In TC 6.01 funktioniert die Suche mittels Regular Expression nicht gut in Binär Dateien. Wenn ich z.B. eine Word oder eine PNG Datei im Lister öffne und nach irgendwelchen (alphabetischen) Zeichen suche, dann findet die normale Suchfunktion mehr Einträge als die RegEx-Suche.
Bitte mal ein paar konkrete Beispiele geben - nur so kann ich sagen, wo das Problem liegt.
Author of Total Commander
https://www.ghisler.com
User avatar
hardy
Junior Member
Junior Member
Posts: 2
Joined: 2003-12-15, 08:26 UTC

Post by *hardy »

ghisler(Author) wrote:
In TC 6.01 funktioniert die Suche mittels Regular Expression nicht gut in Binär Dateien. Wenn ich z.B. eine Word oder eine PNG Datei im Lister öffne und nach irgendwelchen (alphabetischen) Zeichen suche, dann findet die normale Suchfunktion mehr Einträge als die RegEx-Suche.
Bitte mal ein paar konkrete Beispiele geben - nur so kann ich sagen, wo das Problem liegt.
Offenbar enden alle PNG-Dateien mit "IEND®B`" (Binär-Ansicht im Lister). Wenn ich jetzt nach "end" suche, dann wird es in obigem Text (Dateiende) nur gefunden, wenn ich RegEx nicht angekreuzt habe. Das habe ich auf zwei PCs (W2k und XP) ausprobiert. Wenn ich obigen Text in eine neue Datei kopiere, dann findet der Lister das "end" (auch) als RegEx.

Ich habe mehrere solcher Suchen (gleicher Suchstring mit und ohne Kreuz bei RegEx) bei mehreren PNG-Dateien gemacht. Und immer ist das Resultat, dass mit RegEx weniger Textstellen gefunden werden, als ohne. Komischerweise werden aber doch einige gefunden. Und noch komischer ist es, dass manchmal in der HTML-Ansicht im Lister mehr Stellen gefunden werden - aber auch nicht alle -, als in der Binäransicht. In der Unicode-Ansicht (6) werden offenbar die Daten völlig anders interpretiert, so dass ich da meistens sowieso nur ausgefüllte Quadrate sehe und dann eine Suche natürlich ergebnislos bleibt.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50806
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Stimmt, am Ende ist problematisch. Grund: Die Regex-Suche begrenzt die Zeilenlänge auf 4kbytes. Wenn nun die Binärdatei über 4k keinen Zeilenumbruch enthält, kann es sein, dass Teile nicht gefunden werden - Regex ist nun mal für Text gedacht.
Author of Total Commander
https://www.ghisler.com
Worker
New Member
New Member
Posts: 1
Joined: 2008-03-10, 07:32 UTC

Post by *Worker »

Gibts da keinen Lösungsansatz?
Ich suche nämlich auch öfters mir Reges in Binärdateien, und habe mich schon öfters gewundert, warum nicht alle Stellen gefunden wurden.
Ist diese interne Begrenzung wirklich notwendig, oder kann man die nicht weglassen?
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50806
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Schwer zu sagen, ich habe das noch nicht genauer untersucht.
Author of Total Commander
https://www.ghisler.com
Post Reply