View previous topic :: View next topic |
Author |
Message |
py-ro Veteran
Joined: 24 Sep 2002 Posts: 1734 Location: Velbert
|
Posted: Thu Aug 26, 2004 9:22 am Post subject: [OT] Position eines Zeichen in einer Tabelle ändern |
|
|
Hi,
ich stehe gerade etwas auf dem Schlauch, also folgendes:
Ich habe eine Textdatei die eine Tabelle mit festen Feld Breiten darstellt.
Darin sind allerdings die Vorzeichen bei Zahlen hinter dem Wert.
Das ist leider schlecht für den Import. Also muss das Zeichen vor den Wert.
Hat jemand eine Idee.
Ich meine das müsste mit sed zumachen sein, oder mit awk(davon hab ich aber noch keine ahnung)
Jemand einen Vorschlag?
MfG
Py |
|
Back to top |
|
|
toskala Advocate
Joined: 14 Dec 2002 Posts: 2080 Location: hamburg, germany
|
Posted: Thu Aug 26, 2004 9:28 am Post subject: |
|
|
geht sicherlich, gib mal die textdatei als beispiel an, so ist es ein wenig abstrakt. _________________ adopt an unanswered post
erst denken, dann posten |
|
Back to top |
|
|
py-ro Veteran
Joined: 24 Sep 2002 Posts: 1734 Location: Velbert
|
Posted: Thu Aug 26, 2004 9:32 am Post subject: |
|
|
Ups hab ich wohl vergessen
Code: | 10000037 Bezeichnung 1+ 0,01 MN- 01 50,0000 0,00+ 0,00+
|
Alle in einer Zeile versteht sich |
|
Back to top |
|
|
Anarcho Advocate
Joined: 06 Jun 2004 Posts: 2970 Location: Germany
|
Posted: Thu Aug 26, 2004 9:39 am Post subject: |
|
|
Am besten wohl mit regulären ausdrücken.
Nur leider bin ich auf der Arbeit und hier gibbet nur bek*ckte Windoof-Rechner...
Oder Spaltenweise, mit cut kannst du dir nur eine Spalte ausgeben lassen, dies dann mit sed oder was anderem bearbeiten. |
|
Back to top |
|
|
toskala Advocate
Joined: 14 Dec 2002 Posts: 2080 Location: hamburg, germany
|
Posted: Thu Aug 26, 2004 11:50 am Post subject: |
|
|
ja, in der tat am besten wohl mit regulären ausdrücken...
Code: |
echo "10000037 Bezeichnung 1+ 0,01 MN- 01 50,0000 0,00+ 0,00+" | sed "s|\([0-9,]*\)\([+-]\)|\2\1|g"
10000037 Bezeichnung +1 0,01 MN- 01 50,0000 +0,00 +0,00 |
ich habs aber auch nicht selbst richtig gewusst, musste meinen persönlichen regex-gott befragen _________________ adopt an unanswered post
erst denken, dann posten |
|
Back to top |
|
|
toskala Advocate
Joined: 14 Dec 2002 Posts: 2080 Location: hamburg, germany
|
Posted: Thu Aug 26, 2004 11:51 am Post subject: |
|
|
oh, und falls noch -NM soll muss es lauten:
Code: | sed "s|\([0-9,NM]*\)\([+-]\)|\2\1|g" |
_________________ adopt an unanswered post
erst denken, dann posten |
|
Back to top |
|
|
py-ro Veteran
Joined: 24 Sep 2002 Posts: 1734 Location: Velbert
|
Posted: Thu Aug 26, 2004 12:00 pm Post subject: |
|
|
Nah dran leider stört sich das ding noch an dem Tausender Punkt
Das mit dem Ersetzen der 2 durch die erste Ex kannte ich nocht nicht
Wieder was gelernt |
|
Back to top |
|
|
py-ro Veteran
Joined: 24 Sep 2002 Posts: 1734 Location: Velbert
|
Posted: Thu Aug 26, 2004 12:01 pm Post subject: |
|
|
Quote: | Code: | sed "s|\([0-9.,]*\)\([+-]\)|\2\1|g" |
|
So tuts.
THX
Py |
|
Back to top |
|
|
|