hilfdirselbst.ch
Facebook Twitter gamper-media
WhiteRabbit
Beiträge: 18
7. Jan 2016, 20:15
Beitrag #1 von 9
Bewertung:
(2179 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Indesign GREP Ersetzung - Postleitzahl RETURN soll mit Postleitzahl LEERZEICHEN ersetzt werden


Hallo,
habe schon diverse Befehlsanleitungen gelesen usw. werd aber nicht schlau draus.

Habe einen Text der immer wieder geliefert wird und nach der Postleitzahl ein hartes Return beinhaltet. Jetzt wollte ich über GREP sagen nach der Postleitzahl anstatt des Return ein Leerzeichen.

Die Suche nach der Postleitzahl habe ich hinbekommen, nur ersetzt er mir die letzte Ziffer mit einem Leerzeichen.

\d\r
- ist die Suche das funzt aber was muss ich bei der Ersetzung eingeben ??
Top
 
X
Ralf Hobirk p
Beiträge: 5629
7. Jan 2016, 20:34
Beitrag #2 von 9
Beitrag ID: #545817
Bewertung:
(2158 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Indesign GREP Ersetzung - Postleitzahl RETURN soll mit Postleitzahl LEERZEICHEN ersetzt werden


Hallo,

damit die letzte Ziffer nicht ersetzt wird, brauchst du einen "Look behind". Versuche es mal hiermit:
Code
(?<=\d)\r


---
Viele Grüße aus Istrien Cool
Ralf
---
iMac i7 (12,2) 3,4 GHz, 16 GB | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB | Mac Mini (3,1) als Server 2,53 GHz, 8 GB | 10.8.5 | CS6 (ID 8.0.1)
als Antwort auf: [#545816] Top
 
WhiteRabbit
Beiträge: 18
7. Jan 2016, 21:03
Beitrag #3 von 9
Beitrag ID: #545818
Bewertung:
(2140 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Indesign GREP Ersetzung - Postleitzahl RETURN soll mit Postleitzahl LEERZEICHEN ersetzt werden


Hallo,
danke für die schnelle Antwort
ich habe den Code jetzt bei Ersetzen eingeben aber er geht hin und ersetzt die letzte Ziffer mit dem Code und dem Leerzeichen "genauso" wie es im Feld ersetzen steht.
als Antwort auf: [#545817] Top
 
Ralf Hobirk p
Beiträge: 5629
7. Jan 2016, 21:10
Beitrag #4 von 9
Beitrag ID: #545820
Bewertung:
(2129 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Indesign GREP Ersetzung - Postleitzahl RETURN soll mit Postleitzahl LEERZEICHEN ersetzt werden


Das kann eigentlich nicht sein, ich habe den GREP getestet, bevor ich ihn hier gepostet habe. Upps, jetzt lese ich, dass du den Code in "Ersetzen" eingegeben hast. Nein, du musst ihn in "Suchen" eingeben. In "Ersetzen" kommt nur das gewünschte Leerzeichen.

Also nochmal:
Suchen:
Code
(?<=\d)\r

Ersetzen:
Code
[Leerzeichen]


---
Viele Grüße aus Istrien Cool
Ralf
---
iMac i7 (12,2) 3,4 GHz, 16 GB | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB | Mac Mini (3,1) als Server 2,53 GHz, 8 GB | 10.8.5 | CS6 (ID 8.0.1)
als Antwort auf: [#545818] Top
 
WhiteRabbit
Beiträge: 18
7. Jan 2016, 21:12
Beitrag #5 von 9
Beitrag ID: #545821
Bewertung:
(2128 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Indesign GREP Ersetzung - Postleitzahl RETURN soll mit Postleitzahl LEERZEICHEN ersetzt werden


Hallo,
super vielen Dank für deine Geduld :-)
hat gefunzt !

Gruß
Jens
als Antwort auf: [#545820] Top
 
Ralf Hobirk p
Beiträge: 5629
7. Jan 2016, 21:13
Beitrag #6 von 9
Beitrag ID: #545822
Bewertung:
(2120 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Indesign GREP Ersetzung - Postleitzahl RETURN soll mit Postleitzahl LEERZEICHEN ersetzt werden


No Prob ;-)

---
Viele Grüße aus Istrien Cool
Ralf
---
iMac i7 (12,2) 3,4 GHz, 16 GB | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB | Mac Mini (3,1) als Server 2,53 GHz, 8 GB | 10.8.5 | CS6 (ID 8.0.1)
als Antwort auf: [#545821] Top
 
Thomas Richard  M  p
Beiträge: 17203
7. Jan 2016, 23:09
Beitrag #7 von 9
Beitrag ID: #545824
Bewertung:
(2006 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Indesign GREP Ersetzung - Postleitzahl RETURN soll mit Postleitzahl LEERZEICHEN ersetzt werden


Antwort auf [ Ralf Hobirk ]
Code
(?<=\d)\r



Dieser GREP ersetzt ALLE Returns vor denen eine Zahl steht.

Ich kann mir fast nicht vorstellen, dass dein gelieferter Text, der scheinbar aus Adressen besteht, keine weiteren Vorkommen besitzt, die am Ende einer Zeile eine Ziffer besitzen (Hausnummer, Telefonnummer, Geburtstag, ...), von daher wäre ich mit dem grundsätzlich funktionierenden GREP vorsichtig.

Um die Treffer weiter einzugrenzen würde ich z.B. nach einem Return suchen, welches auf ein Return und 5 Ziffern folgt und nur diese Konstellation gegen ein Leerzeichen ersetzen:

Code
(?<=\r\d{5})\r


Wenn in dem Text noch weitere in einer Zeile alleinstehende, 5stellige Ziffern vorkommen, (z.B. Telefonvorwahlen), reicht selbst diese Präzisierung nicht aus.


MfG

Thomas


Und wenn dir geholfen wurde, hilf uns, dies auch weiterhin zu können.
http://www.hilfdirselbst.ch/info/
als Antwort auf: [#545817] Top
 
WhiteRabbit
Beiträge: 18
8. Jan 2016, 06:37
Beitrag #8 von 9
Beitrag ID: #545826
Bewertung:
(1915 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Indesign GREP Ersetzung - Postleitzahl RETURN soll mit Postleitzahl LEERZEICHEN ersetzt werden


Hallo,
Straßen mit Hausnummern sind da nicht dabei - aber grundsätzlich ist deine Fehlereingrenzung richtig !
Habe hier auch 4 stellige Postleitzahlen (Schweiz) dabei, genügt es beim Code anstatt 5 auch 4-5 zu sagen ??
als Antwort auf: [#545824] Top
 
Uwe Laubender S
Beiträge: 3685
8. Jan 2016, 07:59
Beitrag #9 von 9
Beitrag ID: #545827
Bewertung:
(1869 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Indesign GREP Ersetzung - Postleitzahl RETURN soll mit Postleitzahl LEERZEICHEN ersetzt werden


Hallo WhiteRabbit,

Du hast hier zwei Möglichkeiten:

1. Einen Abschnitt suchen (die "Klammermethode"), den Abschnitt mit sich selbst ersetzen, den Rest mit dem Leerzeichen.

Suche einen Abschnitt, der 4 oder 5 aufeinanderfolgende Zahlen enthält*, gefolgt von einem Absatzzeichen:
Code
(\d{4,5})\r


Ersetze den Abschnitt mit sich selbst, den Rest des gefundenen Ausdrucks mit einem Leerzeichen:
Code
$1\x{0020}


2. Das etwas flexiblere lookbehind.
Suche ein Absatzzeichen vor dem 4 oder 5 aufeinanderfolgende Zahlen stehen:*
Code
\d{4,5}\K\r


Ersetze durch ein Leerzeichen:
Code
\x{0020}


Erklärung:
Der "normale" lookbehind ist unflexibel. Variable Fundstellenlängen werden nicht gefunden. Irgendwann mal hat InDesign \K bekommen mit dem auch variable Fundstellenlängen als "lookbehind" funktionieren. Könnte ab InDesign CS6 funktionieren…

* Aber Vorsicht bei beiden Methoden:
Falls Dein Text Zahlen mit mehr als 5 Stellen enthält, wird auch das Absatzzeichen gefunden. Deswegen wäre es wichtig zu wissen, was immer vor der Zahl steht, um dies mit in den GREP einzubeziehen.

Steht die Zahl beispielsweise immer am Absatzanfang, dann würde das mit folgendem Suchausdruck festgezurrt werden:

Korrigierte Methode:
2.1 Das etwas flexiblere lookbehind.

Suche nach einem Absatzzeichen vor dem eine 4 oder 5-stellige Zahl steht, die am Anfang eines Absatzes steht:
Code
^\d{4,5}\K\r


Ersetze durch ein Leerzeichen:
Code
\x{0020}


EDIT: Eine etwas präzisere Beschreibung der Suche ergänzt.
*****
Mit herzlichem Gruß,
Uwe Laubender
als Antwort auf: [#545826]
(Dieser Beitrag wurde von Uwe Laubender am 8. Jan 2016, 08:07 geändert)
Top
 
X