Hallo alles, was ich versucht habe, mit einem sauberen Weg, dies zu tun, zu erforschen und kommen ..sed - Entfernen Sie Nicht-Standard-Zeichen
ich eine SQL-Datei habe, die von Menschen von schlechten Zeichen voll ist das Kopieren und Einfügen von nicht standardisierten Dateien usw., und ich wurde damit beauftragt, die Zeichen, die als Ergebnis erschienen sind, zu entfernen.
wäre ein Beispiel -
“ some text here †more text
Die Datenbank ist sehr umfangreich und ich bin nicht sicher über die Vielzahl von Nicht-Standard-utf-8-Zeichen gibt es .... Gibt es also einen sed
Parameter, kann alle Nicht-Standard-Zeichen entfernen (da ich nicht genau weiß, welche Zeichen es gibt)?
Diese Blöcke sind Standard-HTML und CSS-Blöcke in der DB, so ist es nur eine begrenzte Anzahl der zulässigen Zeichen sowieso, also sollte ich gehen diesen Weg mit einem massiven regex IE
[^a-zA-Z0-9`[email protected]#$%^&*()_\-+={[}\] \\|:;"'<,>.?\/]
sein, dass diese HTML
gespeichert und CSS
Ich sehe nicht die Notwendigkeit, Registerkarten und Leerzeichen zu bewahren (oder sie hätten es in Dateien behalten).
Das obige regex
in einer sed
Anweisung scheint wonky und ein bisschen hack-ish.
Gibt es eine sauberere Möglichkeit, diese Zeichen zu suchen und zu entfernen?
Ich habe versucht, was viele SOs Antworten vorschlagen, aber die meisten Antworten nur eine einzige oder wenige Zeichen enthalten .. Ich möchte etwas befreien, die nicht „Standard“ utf-8
Frage, gibt es eine Möglichkeit, durch ein Verzeichnis (mehrere .SQL-Dateien) zu bewegen? – Zak
Ich denke, das wird Ihre Frage beantworten: https://gist.github.com/akost/2304819 – nir0s
Das funktioniert nur, wenn ich weiß, was die ursprüngliche Codierung ist .. Was ich nicht .. Ich könnte mehrere Versionen der Codierung für sein Das ist wichtig - ich bin neu in diesem Projekt, also gab es bis jetzt keine Kontrolle über die Eingabe in die Datenbank. – Zak