Hat jemand ein Codebeispiel für ein Unicode-fähiges Strings-Programm? Programmiersprache ist nicht wichtig. Ich möchte etwas, das im Wesentlichen das gleiche wie der Unix-Befehl "Strings" tut, aber das funktioniert auch auf Unicode-Text (UTF-16 oder UTF-8), zieht Läufe von Englisch-Zeichen und Interpunktion. (Ich interessiere mich nur für englische Zeichen, kein anderes Alphabet).
Danke!
Möchten Sie es nur verwenden oder bestehen Sie aus irgendeinem Grund auf dem Code?
Auf meinem Debian-System scheint strings
command das sofort machen zu können. Siehe die Übung auf der Hilfeseite:
Bearbeiten: OK. Ich weiß nicht, C #, so dass dies ein bisschen haarig sein kann, aber im Grunde müssen Sie nach Sequenzen von alternierenden Nullen und englischen Zeichen suchen.
%Vor%Dies sollte für Little-Endian funktionieren.
Ich hatte ein ähnliches Problem und probierte das " strings -e ...
", aber ich habe gerade Optionen für die Codierung von Fixbreiten-Zeichen gefunden. (UTF-8-Codierung ist variable Breite).
Beachten Sie, dass Zeichen außerhalb von ASCII zusätzliche strings
-Optionen benötigen. Dies beinhaltet fast alle nicht englischsprachigen Zeichenfolgen.
Trotzdem enthält die Ausgabe " -e S
" (einzelne 8 Bit Zeichen) UTF-8-Zeichen.
Ich habe ein sehr einfaches Perl-Skript geschrieben, das ein "Perl" -Skript anwendet
" strings -e S ... | iconv ...
" für die Eingabedateien.
Ich glaube, es ist einfach, es auf bestimmte Einschränkungen abzustimmen.
Verwendung: utf8strings [options] file*
In einigen Situationen erzeugt dieser Ansatz etwas zusätzlichen Müll.