2017-03-09 3 views
0

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

Antwort

0

ich das denken ist macht den Trick:

iconv -f ORIGINAL_ENCORDING (utf-8) -t utf-8 -c yourfile.sql 
+0

Frage, gibt es eine Möglichkeit, durch ein Verzeichnis (mehrere .SQL-Dateien) zu bewegen? – Zak

+0

Ich denke, das wird Ihre Frage beantworten: https://gist.github.com/akost/2304819 – nir0s

+0

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

Verwandte Themen