[GastForen Programme Print/Bildbearbeitung Adobe InDesign 1000er Trennzeichen bei Zahlen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

1000er Trennzeichen bei Zahlen

neige
Beiträge gesamt: 62

14. Sep 2007, 11:33
Beitrag # 1 von 28
Bewertung:
(40287 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Tag

Neuer Tag neues Problem.

Da ich mit vielen Tabellen (importiert aus Excel) und grossen Zahlen arbeite wäre es von Vorteil wenn ich bei den Zahlen 1000er Trennzeichen bzw. einfach einen Leerraum einfügen könnte. Naja, eingeben kann man das ja schon von Hand, aber ich glaube die idee ist so zeitaufwändig, dass ich sie lieber wieder verdränge ;-)

Ich arbeite mit ID CS3 und wenn mir jemand nen Tipp geben könnte, wie ich das am einfachsten lösen kann, dann wäre ich sehr froh, weil sonst muss ich in Excel die 1000er Trennzeichen aktivieren und diese mit suchen und ersetzen durch nen leerraum ersetzen. (Naja, leben könnt ich damit auch, aber ich hoffe das geht etwas "eleganter")


Besten Dank

Neige
X

1000er Trennzeichen bei Zahlen

Sacha Heck
Beiträge gesamt: 3281

14. Sep 2007, 11:43
Beitrag # 2 von 28
Beitrag ID: #312596
Bewertung:
(40234 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Neige,

In CS3 kannst du das per GREP Suche/Ersetzen erledigen oder schau
dir mal das Super-Skript »ReplaceInStringProWithConfig.jsx« an:
http://www.hilfdirselbst.ch/..._P253076.html#253076

Gruß,
Sacha


als Antwort auf: [#312592]

1000er Trennzeichen bei Zahlen

Martin Fischer
  
Beiträge gesamt: 12783

14. Sep 2007, 11:46
Beitrag # 3 von 28
Beitrag ID: #312598
Bewertung:
(40228 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Neige,

ein GREP-Ausdruck könnte etwa so aussehen:

1. Suche: (\d)(\d{3})\>
2. Ersetze: $1~<$2

Ich habe als Trenner ein Achtelgeviert-Leerzeichen (~>) reingesetzt (zwischen $1 und $2).
Du kannst aber auch einen geschützten Wortzwischenraum (~s) nehmen.


als Antwort auf: [#312592]

1000er Trennzeichen bei Zahlen

Marco Morgenthaler
Beiträge gesamt: 2474

14. Sep 2007, 13:00
Beitrag # 4 von 28
Beitrag ID: #312612
Bewertung:
(40201 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin und Neige

Martins GREP-Ausdruck ist kurz und elegant, führt aber bei sieben- und mehrstelligen Zahlen dazu, dass nur die letzten drei getrennt werden. Es wären also zwei GREP-Durchgänge erforderlich. Ich habe folgende zwei ausprobiert:

\b(\d{1,3})(\d{3})\b
$1~<$2
(Ergebnis: 1000 / 10000 / 100000 > 1 000 / 10 000 / 100 000, andere Zahlen werden nicht angerührt; bei {2,3} statt {1,3} werden auch vierstellige Zahlen nicht getrennt)

(?<=\d)(\d{3})(\d{3})\b
~<$1~<$2
(Ergebnis: 1000000 / 10000000 > 1 000 000 / 10 000 000)

Es ist mir nicht gelungen, alles in einen GREP-Ausdruck zu verpacken, aber wahrscheinlich ist auch das möglich?! Wenn nicht, wäre ein Skript ungemein praktisch, dass benutzerdefinierte Abfragen nacheinander abarbeiten würde =;o)

Gruss Marco

PS. Noch ein Link zu einem (amerikanischen) Video zu GREP mit Tabellenziffern: http://www.yabb-adobe-doo.com/...gn_cs3_grep_800.html


als Antwort auf: [#312598]

1000er Trennzeichen bei Zahlen

Martin Fischer
  
Beiträge gesamt: 12783

14. Sep 2007, 13:26
Beitrag # 5 von 28
Beitrag ID: #312615
Bewertung:
(40178 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Marco,

Neige hatte nur nach dem 1000er Trennzeichen verlangt.
Weshalb sollte ich da mehr liefern als er verlangt und ich kann? ;-)

In Deiner Lösung gefällt mir der Begrenzer am Wortanfang nicht.
Vielleicht sollte man die Dreiergruppen irgendwie wiederholen.
Also am Ende eine Dreiergruppe stehen lassen und nach vorne mit optionalen weiteren Dreiergruppen in Wiederholungen arbeiten. Der Code dafür will mir nicht in den Kopf.

Vielleicht kommt gelegentlich Hilfe aus dem Norden.
Aus einer Hansestadt oder drüber hinaus.


als Antwort auf: [#312612]
(Dieser Beitrag wurde von Martin Fischer am 14. Sep 2007, 13:34 geändert)

1000er Trennzeichen bei Zahlen

Marco Morgenthaler
Beiträge gesamt: 2474

14. Sep 2007, 15:00
Beitrag # 6 von 28
Beitrag ID: #312642
Bewertung:
(40148 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin

Zitat In Deiner Lösung gefällt mir der Begrenzer am Wortanfang nicht.

Schade, aber immerhin kann ich damit verhindern, dass Zahlen nur teilweise getrennt werden. Die Zahlen ab einer Million erwische ich dann im zweiten Durchgang.

Zitat Also am Ende eine Dreiergruppe stehen lassen und nach vorne mit optionalen weiteren Dreiergruppen in Wiederholungen arbeiten. Der Code dafür will mir nicht in den Kopf.

Der Code wäre:(\d{3})*(\d{3})\b

Am Schluss also eine Dreiergruppe, davor weitere optionale Dreiergruppen, wobei
* Kein oder mehrmals
auch ersetzt werden könnte durch (u. a.)
? Ein- oder keinmal
+ Ein- oder mehrmals

Das Problem liegt aber im Ersetzen-Feld. Wie soll ich da was reinschreiben, das für alle Fälle zum gewünschten Ergebnis führt? Ich habe keine Ahnung.

Vielleicht erhellt das Nordlicht das Problem.

Gruss Marco


als Antwort auf: [#312615]

1000er Trennzeichen bei Zahlen

Peter Kahrel
Beiträge gesamt: 182

14. Sep 2007, 16:39
Beitrag # 7 von 28
Beitrag ID: #312665
Bewertung:
(40112 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Marco, Martin,

Adapted from Friedl:

Find: (\d)(?=(\d\d\d)+\b)
Replace with: $1~<

This adds separator symbols to numbers of any length from the right (that's what \b at the end does).

Regards,

Peter


als Antwort auf: [#312642]

1000er Trennzeichen bei Zahlen

Martin Fischer
  
Beiträge gesamt: 12783

14. Sep 2007, 16:46
Beitrag # 8 von 28
Beitrag ID: #312667
Bewertung:
(40102 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Peter,

whow, it looks so easy (taking a lookbehind).
Thank you.


als Antwort auf: [#312665]

1000er Trennzeichen bei Zahlen

Marco Morgenthaler
Beiträge gesamt: 2474

14. Sep 2007, 17:01
Beitrag # 9 von 28
Beitrag ID: #312671
Bewertung:
(40095 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hello Peter

Thank you for your elegant solution (with a lookahead).

Is it possible to exclude any four digit numbers (1000 is not separated, but 10 000 is)?
I tried (\d\d)(?=(\d\d\d)+\b), but then 1000000 would be separated 1000 000 (instead of 1 000 000).

Best regards
Marco


als Antwort auf: [#312665]

1000er Trennzeichen bei Zahlen

Peter Kahrel
Beiträge gesamt: 182

14. Sep 2007, 17:26
Beitrag # 10 von 28
Beitrag ID: #312672
Bewertung:
(40077 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Marco,

It wasn't my solution! I adapted Friedl's description (in "Mastering regular expressions"). Unfortunately he didn't say how to ignore four-digit numbers :). My efforts so far lead to the same results you got. I'll brood on it a bit more.

Regards,

Peter


als Antwort auf: [#312671]

1000er Trennzeichen bei Zahlen

Marco Morgenthaler
Beiträge gesamt: 2474

14. Sep 2007, 18:19
Beitrag # 11 von 28
Beitrag ID: #312677
Bewertung:
(40060 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Peter

Now I found a solution, and I am happy!

Suchen nach: (?<=\d)(\d)(?=(\d\d\d)+\b)|(\d)(?=(\d\d\d){2,}\b)
Ändern in: $0~<

The trick is: If you use OR (Oder) in the search string, you must use $0 in the replace string. $1 didn’t work with some numbers (the first digit was deleted in 1000000).

Best regards
Marco

PS (auf Deutsch): Obiger GREP-Ausdruck gruppiert Zahlen ab 5 Stellen in Dreiergruppen. 10 000, 100 000, 1 000 000 usw. ~< Steht für ein Achtelgeviert.


als Antwort auf: [#312672]

1000er Trennzeichen bei Zahlen

Martin Fischer
  
Beiträge gesamt: 12783

14. Sep 2007, 18:30
Beitrag # 12 von 28
Beitrag ID: #312679
Bewertung:
(40053 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Marco,

klasse!

Allerdings bleiben bei mir auch solche Zahlen stehen wie:
1000 000
1000 000 000

Sollte das bei größer 1000 nicht so werden:
1 000 000
1 000 000 000

Oder ist es Absicht, daß auch bei größeren Zahlen nicht eine einzelne Ziffer vorne stehen bleibt?


als Antwort auf: [#312677]

1000er Trennzeichen bei Zahlen

Marco Morgenthaler
Beiträge gesamt: 2474

14. Sep 2007, 18:36
Beitrag # 13 von 28
Beitrag ID: #312680
Bewertung:
(40051 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Martin, das muss gehen, bei mir werden alle grossen Zahlen gruppiert (vgl. Screenshot nach Ausführen des GREPs).

Hast du den Code richtig kopiert? Ich habe es mit diesem Code getestet, aber zur Sicherheit überprüfe ich das nochmals.

Ciao Marco

[Edit] Ich habs rausgefunden: Du hast im Search-String einen Leerschlag am Schluss mitkopiert, also nach \b) darf am Schluss kein Leerschlag stehen.


als Antwort auf: [#312679]
(Dieser Beitrag wurde von Marco Morgenthaler am 14. Sep 2007, 18:39 geändert)

Anhang:
GREP_Zahlen.png (5.30 KB)

1000er Trennzeichen bei Zahlen

Martin Fischer
  
Beiträge gesamt: 12783

14. Sep 2007, 19:14
Beitrag # 14 von 28
Beitrag ID: #312686
Bewertung:
(40027 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Gut, so geht's.

Das mit der "$0" ist ein Ding.
Wie bist Du da drauf gekommen?


als Antwort auf: [#312680]

1000er Trennzeichen bei Zahlen

Marco Morgenthaler
Beiträge gesamt: 2474

14. Sep 2007, 19:32
Beitrag # 15 von 28
Beitrag ID: #312688
Bewertung:
(40023 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich habe gesehen, dass Indesign die richtigen Stellen findet, aber nicht immer das Gewünschte ersetzt. Dann ist mir eingefallen, dass es auch ein Kürzel ($0) für die gefundene Auswahl gibt.

PS: Auf º>0©º°¨ wäre ich allerdings nie gekommen =;o)

Einen schönen Abend
Marco


als Antwort auf: [#312686]
X