Wie manipuliert man diese Zeichenfolge, um sie lesbar zu machen?

643
Kenny

Ich habe diesen String in einer Excel-Datei:

4603,2504603 #; 4616,2504616 #; 4617,2504617 #; 4519,2504519 #; 4620,2504620

(Es ist tatsächlich viel länger als das, aber das Muster ist das gleiche).

Ich muss in der Lage sein, etwas in etwas zu sortieren, das einfacher gelesen werden kann. Ich möchte, dass das Endergebnis so aussieht:

4603,2504603
4616,2504616
4617,2504617

Ich denke, ich brauche ein Programm oder einen Befehl, der # ersetzen kann. mit einem Zeilenumbruch. Ich brauche etwas, das unter Windows 7 funktionieren wird. Ich erinnere mich, dass ich in einer Linux-Klasse etwas Ähnliches mit Shell-Scripting gemacht habe, aber ich kann mich nicht erinnern, wie es gemacht wurde.

Hinweis: Dies sind keine Hausaufgaben. Mein Chef hat mich auf der Arbeit gebeten.

0
Ich konnte meine Daten in Microsoft Word einfügen und dann alle Vorkommen von # ersetzen. mit ^ p, das MS Word als Wagenrücklauf (Zeilenumbruch) interpretiert. Kenny vor 11 Jahren 1
Geben Sie dies als Antwort an, wenn es das Problem für Sie gelöst hat. ChrisF vor 11 Jahren 0

3 Antworten auf die Frage

1
TheUser1024

Du hättest es beinahe verstanden. Notepad ++ kann Sachen durch Zeilenumbrüche ersetzen. Gehen Sie zum Suchen & Ersetzen-Dialog und wählen Sie extended mode. Dann können Sie einfach alle Ihre #;mit ersetzen \r\n.

Danke an Bob für den Hinweis, dass Windows Wagenrücklauf + Zeilenvorschub wünscht, während Unix und andere * Nixe nur Zeilenvorschub bevorzugen.

"\ r \ n" (Wagenrücklauf + Zeilenvorschub) ist Standard und wird unter Windows bevorzugt. Nur ein Zeilenvorschub (`\ n`, der normalerweise von * nix verwendet wird) wird in anderen Windows-Programmen möglicherweise nicht richtig angezeigt. Bob vor 11 Jahren 0
gut danke! korrigierte diese Antwort TheUser1024 vor 11 Jahren 0
1
hdhondt

If you don't have NotePad++, you still have Word - since you have Excel. Go to Edit > Find & Replace. Enter "#;" in the "Find what" box, and "^p" in "Replace with". In Word ^p means a paragraph marker, i.e a newline or CR/LF.

EDIT

As you're using Excel you can use Data > Text_to_Columns to do the conversion. Select # as the delimiter. As the delimiter cannot be 2 characters (#;) you will also have to use Edit > Find & Replace to remove the semi-colons (;) afterwards.

And, of course, Excel will play havoc with the commas as it treats them as thousands-separators.

0
Kenny

Ich konnte meine Daten in Microsoft Word einfügen und dann alle Vorkommen von # ersetzen. mit ^ p, das MS Word als Wagenrücklauf (Zeilenumbruch) interpretiert.