![]() |
AW: Womit kann man versteckte Unicode/ASCII-Zeichen im Code finden ?
Mal folgenden Versuch starten:
Erstelle eine komplette Kopie deines Sourcecode Verzeichnisses. Schreibe eine kleine Hilfsfunktion. In der mORMot Library Unit SynCommons.pas gibt es viele Funktionen zum Konvertieren.
Delphi-Quellcode:
Dann mit dem Total Commander und dem Befehl "Verzeichnisse synchronisieren" nachschauen was sich zwischen Original und Kopie geändert hat.
var
i: Integer; list: TFileNameDynArray; begin list := FindFilesDynArrayToFileNames(FindFiles('F:\myStartDir', '*.pas', '', False, True, True)); for i := Low(list) to High(list) do FileFromString(AnyTextFileToString(list[i], True), list[i]); end; Bis bald... Thomas |
AW: Womit kann man versteckte Unicode/ASCII-Zeichen im Code finden ?
Zähl doch einfach die Bytes:
Code:
Grundannahme ist, daß die Datei Ansi-codiert ist. In diesem Falle liegen die häufigsten
Pseudocode:
type BCarray = array [0..255] of Integer; ..... for i:=0 to length_of_File do inc(bcarray[bytestream[i]),1); Gruß K-H |
AW: Womit kann man versteckte Unicode/ASCII-Zeichen im Code finden ?
Sofern ich mich recht entsinne, sollte ein Formatieren des Codes durch eines der gängigen Tools (IDE oder auch GExperts) ausreichen. Es gibt da wohl auch die Option das komplette Projekt zu formatieren.
Sherlock |
AW: Womit kann man versteckte Unicode/ASCII-Zeichen im Code finden ?
Hab das jetzt mal mit ripgrep in meinem Home-Verzeichnis durchexerziert:
Code:
... du kannst andere Zeichen zwischen ß und ] einfügen.
rg -P '[^\x00-\x7FÄÖÜäöüß]'
Falls du dich mit RE noch nicht so auskennst: "[]" definiert eine Menge von Zeichen auf die der Ausdruck zutrifft, "^" negiert das, "\x00-\x7F" trifft auf alle ASCII-Zeichen (also 0..127) zu und dahinter folgen halt die Umlaute in Groß- und Kleinschreibung, sowie ß. Was ich damit fand waren bspw. das Copyrightzeichen ©, Apostrophe ’ (statt ' auf der Tastatur), ², ●, µ, └, ─, à, í, î, ⍝, •, ‣, ⁃, χ, ⍺, ⍶, ⍵, ∇, ⍫, é, jede Menge Emojis (hunderte!) und diverse Zeichen die in einer anderen Codepage Sinn ergeben, aber nicht als UTF-8 interpretiert. Jetzt muß ich erstmal aufräumen, weil viel von dem Code eigentlich als UTF-8 daherkommen sollte. Über 30000 Dateien in ~2 Sekunden. |
AW: Womit kann man versteckte Unicode/ASCII-Zeichen im Code finden ?
Zitat:
Zitat:
Ich habe es mit ![]() Es bleibt deshalb mühsam, ich werde mir wohl doch ein kleines Tool dazu schreiben müssen. |
AW: Womit kann man versteckte Unicode/ASCII-Zeichen im Code finden ?
Ach, es geht darum es aus didaktischen Gründen selbst zu machen. Dann ist meine
![]() Sherlock |
AW: Womit kann man versteckte Unicode/ASCII-Zeichen im Code finden ?
Zitat:
Zitat:
Zitat:
Ansonsten probier doch mal PowerGREP. Das läßt sich für eine gewisse Zeit auch als Trialversion benutzen. |
AW: Womit kann man versteckte Unicode/ASCII-Zeichen im Code finden ?
Hallo,
wie schon ein Vorredner geschrieben hat, schau dir mal Notepad++ an, da kannst du ganze Unterverzeichnisse auch mit Regulären ausdrücken durchsuchen und bekommst alle Stellen die dem Suchbegriff entsprechen angezeigt. Jürgen |
AW: Womit kann man versteckte Unicode/ASCII-Zeichen im Code finden ?
Danke an Alle für die vielen Vorschläge.
Ich werde jetzt wohl eine kleine Routine in den Code bauen, damit ich das Debuggen/Loggen kann. Das im Code Suchen scheint doch Mehraufwand zu sein. @Sherlock: Ja, CodeFormat wäre machbar. Aber ich nutze das eigentlich nicht, wharscheinlich erkenne ich dann meine Programme dannach nicht wieder :-D So eine Taste drücke ich erst wenn ich genau weiss was hinten rauskommt, nicht am produktiven Code. Diese falschen Zeichen kamen wohl von Cut-and-Paste von ausländischen Seiten, Mails, API-Referenzen, speziell aus chinesischen Dokumenten. Die Chinesen kopieren anscheinend nicht nur Markenartikel, sondern auch einzelne Font-Character, so das man den Unterschied nicht merkt :stupid: Ich mache normalerweise Copy-and-Paste von Code und Kommentaren zuerst in meinen ASCII-Editor, damit Formatierungen etc. raus sind. Leider vergesse ich das schonmal, und die IDE meckert ja auch nicht. Vielleicht wäre ein Clipboard-Cleaner ein schönes, neues Tool für das reine ASCII Text-Kopieren ohne Reue :stupid: |
AW: Womit kann man versteckte Unicode/ASCII-Zeichen im Code finden ?
Der Formatter macht nix kaputt, habe ich im Rahmen unserer Validierung von externen Tools überprüft. Du kannst den Formatter ja an Deinen Stil anpassen. Ich habe mittlerweile Strg+D, Strg+S als Tastenfolge derart fest in mir drin, wenn ich einen Codeblock fertig habe, daß ich das manchmal in anderen Texteditoren anwende, was zu unerwünschten Ergebnissen führen kann. :lol:
Sherlock |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz