Zu Inhalt springen

GREP mit Mac und Windows

Hervorgehobene Antworten

Meine Frau hat gerade mit InDesign ein Programmheft zu setzen, in dem die Datumsangaben für alle Veranstaltungen ohne Jahr gesetzt sind. Sie möchte nun immer das Jahr 2016 anhängen. Ich habe versucht, dies über Suchen-Ersetzen mit folgendem GREP-Ausdruck zu lösen:

 

Suchen:

\d+.\d+.

 

und Ersetzen:

$02016

 

Auf meinem Mac klappt das wie gewünscnt, aber mit InDesign auf Windows bei meiner Frau werden immer sämtliche Zahlen gefunden. Gibt es da Unterschiede im Verhalten von InDesign auf den beiden Plattformen?

 

Falls sich jemand das mal ansehen möchte: https://www.dropbox.com/s/ue5bzw3eb4eeqjl/GREP.indd?dl=0

Ist der Punkt nicht eigentlich auch ein aktives Zeichen und musste escaped werden, also \d+\.\d+\. 

 

Zumindest ist das bei Regular Expressions, auf denen GREP ja basiert, so … warum das auf Mac und Win verschieden is – keine Ahnung. Evtl. verschiedene ID-Versionen?

Hallo Dieter,

Wenn Du eine IDML-Datei hinterlegst, dann kann ich sie auch mit CS6 öffnen.

Gruß
Quarz

| Win7/64 Prof. | CS6 ver 8.1

Hallo Dieter,

 

Tobi hat Dir ja schon die Lösung gegeben - den Punkt escapen.

 

Gruß
Quarz

| Win7/64 Prof. | CS6 ver 8.1 |

  • Ersteller
vor einer Stunde schrieb TobiW:

Ist der Punkt nicht eigentlich auch ein aktives Zeichen und musste escaped werden, also \d+\.\d+\. 

Hm, ich habe mich ja noch nicht weiter mit GREP beschäftigt. Ich war jedenfalls der Meinung, dass der Punkt hier ja kein »Metazeichen« ist, sodass eben gerade kein \ davor gehört. Aber so funktioniert es jetzt tatsächlich auf beiden Systemen. So einfach ist es manchmal, meine Frau glücklich zu machen. Vielen Dank!

  • Ersteller
vor 8 Minuten schrieb TobiW:

Jedenfalls steht der Punkt für ein beliebiges Zeichen, nur nicht für Umbrüche. Siehe auch http://www.indesignjs.de/GREP-Referenz__Gregor_Fellenz.pdf;-)

Ja eben. Und ich wollte ja nicht, dass das für beliebige Zeichen gilt, sondern tatsächlich nur für Punkte.

\d+.\d+.

→ eine oder mehrere Ziffern, gefolgt von einem beliebigen Zeichen, gefolgt von einer oder mehren Ziffern, gefolgt von einem beliebigen Zeichen

 

\d+\.\d+\.

→  eine oder mehrere Ziffern, gefolgt von einem Punkt, gefolgt von einer oder mehren Ziffern, gefolgt von einem Punkt

 

Da ».« eine besondere Bedeutung hat (beliebiges Zeichen), muss man einen tatsächlichen Punkt eben „escapen“, mit »\.«.

 

  • Ersteller

Ich hatte das in der Beschreibung von Adobe genau anders herum verstanden. Wenn beim d das »\« davor stehen muss, um zu kennzeichnen, dass nicht der Buchstabe d gemeint ist, sondern ein Megazeichen für eine beliebige Ziffer, dann müsse es beim Punkt genauso so sein, dass eben »\.« als Platzhalter für ein beliebiges Zeichen steht und wenn man das nicht will, sondern nur der Punkt gemeint ist, dann müsse man ihn ohne Strich setzen. 

Das mag auf den allerersten Blick logisch erscheinen, wäre aber kontraproduktiv, da regular expressions dann noch viel komplizierter aussehen würden als ohnehin schon.

Erstelle ein Konto, um zu kommentieren

Wichtige Informationen

Wir setzen Cookies, um die Benutzung der Seite zu verbessern. Du kannst die zugehörigen Einstellungen jederzeit anpassen. Ansonsten akzeptiere bitte diese Nutzung.

Konto

Navigation

Browser-Push-Nachrichten konfigurieren

Chrome (Android)
  1. Klicke das Schloss-Symbol neben der Adressleiste.
  2. Klicke Berechtigungen → Benachrichtigungen.
  3. Passe die Einstellungen nach deinen Wünschen an.
Chrome (Desktop)
  1. Klicke das Schloss-Symbol in der Adresszeile.
  2. Klicke Seiteneinstellungen.
  3. Finde Benachrichtigungen und passe sie nach deinen Wünschen an.