[GastForen Programme Print/Bildbearbeitung Adobe InDesign Suchen/Ersetzen, GREP, Skript ?

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

Suchen/Ersetzen, GREP, Skript ?

barsch1969
Beiträge gesamt: 52

28. Okt 2011, 10:43
Beitrag # 1 von 15
Bewertung:
(5342 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Morgen werte Community,

aufgrund eines neuen ERPs werden unsere Artikelnummernkreise erweitert, was gleichzeitig bedeutet, dass wir dies dann auch auf je 300 Seiten in verschiedenen Katalogvarianten manuell abändern müssen. Das macht wenig Freude und birgt viele Fehlerquellen, da die Daten aus keiner Datenbank eingelesen werden.
Bisher haben die Artikelnummern in unserem Katalog folgendes Format in einer festen Tabellenspalte, die immer einen identischen Tabellenkopftext hat (Art.-Nr.):
1 1111 111 (die "1" ist ein Platzhalter).
Zukünftig sehen sie wie folgt aus:
1 11112 111. Also alle "1" bleiben unverändert, die "2" kommt neu dazu.
Kann man diesen workflow mit Suchen/Erstzen oder einem Grep-Stil lösen. Oder einem Skript?
Über Ideen, Anregungen freue ich mich, Angebote für Skriptlösungen gerne auch per PM an mich.

Gruß
Markus

P.S. Wir arbeiten mit ID CS 5, Windows
X

Suchen/Ersetzen, GREP, Skript ?

WernerPerplies
Beiträge gesamt: 2762

28. Okt 2011, 11:01
Beitrag # 2 von 15
Beitrag ID: #483305
Bewertung:
(5329 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Markus,

Zitat Kann man diesen workflow mit Suchen/Erstzen oder einem Grep-Stil lösen.


Das weiß ich nicht.
Zitat Oder einem Skript?


Das geht mit großer Sicherheit.
Zitat Angebote für Skriptlösungen gerne auch per PM an mich.


Bei mir ist der Weg etwas anders:

Schicke mir eine Testdatei, eine genaue Aufgabenbeschreibung und Deine Budgetvorstellungen, ich prüfe dann, ob das machbar ist.


als Antwort auf: [#483304]

Suchen/Ersetzen, GREP, Skript ?

barsch1969
Beiträge gesamt: 52

28. Okt 2011, 11:05
Beitrag # 3 von 15
Beitrag ID: #483306
Bewertung:
(5324 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Werner,

mache ich gerne - Mail geht gleich raus.

Gruß
Markus


als Antwort auf: [#483305]

Suchen/Ersetzen, GREP, Skript ?

Quarz
Beiträge gesamt: 3555

28. Okt 2011, 11:10
Beitrag # 4 von 15
Beitrag ID: #483308
Bewertung:
(5317 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Markus,

wird eine "2" hinter die 5. Zahl hinzufügt
oder eine beliebige Zahl?

Sind die beiden Leerstellen in jeder Zahl
enthalten?

Hat die Art.-Nr. ein Absatzformat?


Gruß
Quarz

-------------------------------------------
InDesign CS5 7.04 | Win7/64 Prof.



als Antwort auf: [#483304]

Suchen/Ersetzen, GREP, Skript ?

barsch1969
Beiträge gesamt: 52

28. Okt 2011, 11:27
Beitrag # 5 von 15
Beitrag ID: #483313
Bewertung:
(5296 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Quarz,

letztendlich brauchen wir doch nur die ersten 5 Ziffern der Artikelnummer für die Suche.
Als 5. Zahl kommt immer eine 0 dazu.
Das Leerzeichen nach der ersten Zahl ist mal vorhanden und mal nicht.
Hier mal ein paar Beispiele:
1 1990 wird zu 1 19900
1 3636 wird zu 1 36360
17999 wird zu 1 79990
Eine weitere Anforderung gibt es noch:
Die Spaltenbreite ist limitieret und derzeit voll ausgefüllt (eine Kontur ist rechts vorhanden).
Eine Spaltenbreitenausdehnung könnten wir verhindern, indem wir das Leerzeichen nach der 1. Ziffer weglassen. Oder das Skript pass dies individuell an.
Die Spalte hat ein Absatzformat.

Gruß
Markus


als Antwort auf: [#483308]

Suchen/Ersetzen, GREP, Skript ?

Martin Fischer
  
Beiträge gesamt: 12783

28. Okt 2011, 11:27
Beitrag # 6 von 15
Beitrag ID: #483314
Bewertung:
(5295 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Markus,

die Fragen von Quarz zeigen, dass die Aufgabe noch etwas konkreter formuliert werden sollte.

Ergänzend zur Beantwortung von Quarz' Frage hülfe möglicherweise auch die Auflistung von konkreten Beispielen von den Zahlen, damit man erkennen kann, wie das Gleichbleibende und wie das Veränderliche sich real und im Vergleich darstellt.

Wenn die Aufgabenstellung erst mal präzisiert ist, dann ist die Umsetzung einer Lösung geschätzt in 5-10 Minuten erledigt.

-----
edit:
Du hast Deine Antwort unmittelbar vor meiner Frage veröffentlicht.
Jetzt wird manches klarer.


als Antwort auf: [#483308]
(Dieser Beitrag wurde von Martin Fischer am 28. Okt 2011, 11:30 geändert)

Suchen/Ersetzen, GREP, Skript ?

Martin Fischer
  
Beiträge gesamt: 12783

28. Okt 2011, 11:36
Beitrag # 7 von 15
Beitrag ID: #483315
Bewertung:
(5282 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: letztendlich brauchen wir doch nur die ersten 5 Ziffern der Artikelnummer für die Suche.


Um die Artikelnummer möglichst eindeutig zu identifizieren ist es durchaus von Vorteil, die ganze Artikelnummer im Auge zu behalten und zu berücksichtigen.

Antwort auf: Als 5. Zahl kommt immer eine 0 dazu.

Oben war es eine 2 und jetzt ist es eine 0.
Was gilt?

Antwort auf: Die Spaltenbreite ist limitieret und derzeit voll ausgefüllt (eine Kontur ist rechts vorhanden).

Dann liegt das eigentliche Problem nicht darin, die 0 zu ergänzen, sondern so zu ergänzen, dass die Nummer insgesamt nicht breiter wird als bisher, auch wenn eine weitere Zahl und ggf. ein weiteres Leerzeichen hinzukommen.
Dürfen die normalen Leerzeichen (Viertelgeviert) durch kleinere Leerzeichen (Achtelgeviert) ersetzt werden?

Antwort auf: Eine Spaltenbreitenausdehnung könnten wir verhindern, indem wir das Leerzeichen nach der 1. Ziffer weglassen. Oder das Skript pass dies individuell an.


Ein Skript ist für diese Aufgabe nicht notwendig.
Das geht m.E. allein per GREP.
Was sollte das Skript individuell anpassen?
Die Ziffern sind Tabellenziffern und haben immer dieselbe Breite?
Jede Artikelnummer, bestehend aus einer best. Menge an Zahlen, hat eine feste Breite?

Antwort auf: Die Spalte hat ein Absatzformat.

Das ist undeutlich formuliert.
Eine Spalte hat kein Absatzformat.
Aber ein Absatz hat eins.


als Antwort auf: [#483313]
(Dieser Beitrag wurde von Martin Fischer am 28. Okt 2011, 11:47 geändert)

Suchen/Ersetzen, GREP, Skript ?

Quarz
Beiträge gesamt: 3555

28. Okt 2011, 11:49
Beitrag # 8 von 15
Beitrag ID: #483317
Bewertung:
(5265 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Markus,

folgendes GREP könnte die Aufgabe erledigen
Screenshot 1

Mit einem Achtelgeviert nach der ersten Ziffer
Screenshot 2

Ohne Leerstell
e nach der ersten Ziffer
Screenshot 3


Gruß
Quarz

-------------------------------------------
InDesign CS5 7.04 | Win7/64 Prof.



als Antwort auf: [#483315]
Anhang:
GREP 1.gif (16.2 KB)   GREP 2.gif (16.2 KB)   GREP3.gif (16.3 KB)

Suchen/Ersetzen, GREP, Skript ?

barsch1969
Beiträge gesamt: 52

28. Okt 2011, 11:50
Beitrag # 9 von 15
Beitrag ID: #483318
Bewertung:
(5261 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

das hört sich schon mal gut an!
Genau, die Ausbreitung soll nicht breiter werden wie bisher.
Die normalen Leerzeichen können durch kleinere Leerzeichen ersetzt werden.
Das mit dem Skript habe ich erwähnt, weil wir Tabellenskripte einsetzen, die bspw. alle Spalten einer gewissen Kategorie löschen und sich anschließend die Tabellenbreite aber trotzdem wieder auf den Ursprung ausdehnt.

Die Ziffern sind Tabellenziffern: genau
... und haben immer dieselbe Breite: ja
Jede Artikelnummer, bestehend aus einer best. Menge an Zahlen, hat eine feste Breite? => Nein, denn in Ausnahmefällen wird auch mal spationiert. Aber diese Ausnahmen sollten wir außer Acht lassen.

Markus


als Antwort auf: [#483315]

Suchen/Ersetzen, GREP, Skript ?

Martin Fischer
  
Beiträge gesamt: 12783

28. Okt 2011, 11:53
Beitrag # 10 von 15
Beitrag ID: #483319
Bewertung:
(5258 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Quarz,

mein GREP, der die gesamte Artikelnummer berücksichtigt, sieht folgendermaßen aus:

Suchen: \<(\d)\s?(\d{4})\s(\d){3}\>
Ändern: $1~<$22~<$3

Rot hervorgehoben die einzufügende Zahl.
Leerzeichen (auch das möglicherweise fehlende nach der ersten Zahl) werden als Achtelgeviert-Leerzeichen ~< eingearbeitet.

Und so sieht's für ein Sechstelgeviert-Leerzeichen ~% aus:

Suchen: \<(\d)\s?(\d{4})\s(\d){3}\>
Ändern: $1~%$22~%$3


als Antwort auf: [#483317]
(Dieser Beitrag wurde von Martin Fischer am 28. Okt 2011, 12:03 geändert)

Suchen/Ersetzen, GREP, Skript ?

barsch1969
Beiträge gesamt: 52

28. Okt 2011, 12:10
Beitrag # 11 von 15
Beitrag ID: #483321
Bewertung:
(5211 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Quarz, Hallo Martin,

besten Dank!
Ich weerde beides Testen und dann heute Abend Meldung machen.

Gruß
Markus


als Antwort auf: [#483319]

Suchen/Ersetzen, GREP, Skript ?

barsch1969
Beiträge gesamt: 52

28. Okt 2011, 12:32
Beitrag # 12 von 15
Beitrag ID: #483322
Bewertung:
(5170 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Quarz,

es funktioniert super.
Teste noch weiter.
1000 DANK

Markus


als Antwort auf: [#483321]

Suchen/Ersetzen, GREP, Skript ?

barsch1969
Beiträge gesamt: 52

28. Okt 2011, 14:26
Beitrag # 13 von 15
Beitrag ID: #483331
Bewertung:
(5117 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf [ Martin Fischer ] Hallo Martin,

wie muss ich den Befehl ändern, wenn ich nur die ersten 5 Ziffern berücksichtigen muss (habe es selbst nicht hinbekommen):

Suchen: \<(\d)\s?(\d{4})\s(\d){3}\>
Ändern: $1~<$22~<$3

Rot hervorgehoben die einzufügende Zahl.
Leerzeichen (auch das möglicherweise fehlende nach der ersten Zahl) werden als Achtelgeviert-Leerzeichen ~< eingearbeitet.

Und so sieht's für ein Sechstelgeviert-Leerzeichen ~% aus:

Suchen: \<(\d)\s?(\d{4})\s(\d){3}\>
Ändern: $1~%$22~%$3



als Antwort auf: [#483319]

Suchen/Ersetzen, GREP, Skript ?

Martin Fischer
  
Beiträge gesamt: 12783

28. Okt 2011, 14:51
Beitrag # 14 von 15
Beitrag ID: #483335
Bewertung:
(5105 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Markus,

dann bist Du im Prinzip wieder bei der Version von Quarz angelangt.

Suchen: \<(\d)\s?(\d{4})\>
Ändern: $1~%$22

Aber dann fehlt Dir auch die Behandlung des zweiten Leerzeichens.

So könntest Du dieses mitberücksichtigen

Suchen: \<(\d)\s?(\d{4})\>\s
Ändern: $1~%$22~%


Oder wenn Du sicher gehen willst, dass danach eine Zahl folgt, die aber beim Ersetzen nicht berücksichtigt wird:

Suchen: \<(\d)\s?(\d{4})\>\s(?=\d)
Ändern: $1~%$22~%


als Antwort auf: [#483331]
(Dieser Beitrag wurde von Martin Fischer am 28. Okt 2011, 14:53 geändert)

Suchen/Ersetzen, GREP, Skript ?

barsch1969
Beiträge gesamt: 52

28. Okt 2011, 15:37
Beitrag # 15 von 15
Beitrag ID: #483337
Bewertung:
(5082 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

auch an Dich herzlichen Dank, damit bin ich für alle Fälle erst mal gerüstet!
Schönes Wochenende
Markus


als Antwort auf: [#483335]
X