[GastForen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Forenindex -- Lesezeichen

15 Lesezeichen für grep

Skript, um mehrere Suchen/Ersetzen-Abfragen zu kombinieren
Hallo

Bekanntlich gibt es in Indesign CS3 die Möglichkeit, benutzerdefinierte Abfragen im Suchen/Ersetzen-Fenster unter eigenem Namen abzuspeichern. Eine komplizierte GREP-Abfrage, allenfalls ergänzt mit Formatsuche usw., kann so später einfach wieder hervorgeholt werden.

Schon lange wünschte ich mir ein Skript, dass mehrere dieser gespeicherten Abfragen automatisch ausführt. Heute hat mich Peter Kahrel netterweise darauf hingewiesen, dass im Adobe-Skript-Forum folgendes einfache Skript existiert:


Code
app.loadFindChangeQuery ('query_a', SearchModes.grepSearch); 
app.activeDocument.changeGrep();

app.loadFindChangeQuery ('query_b', SearchModes.grepSearch);
app.activeDocument.changeGrep();


Im obigen Skript müssen query_a bzw. query_b durch entsprechende Suchabfragen ersetzt werden. Diese befinden sich als xml-Dateien in Ordnern «Find-Change Queries» (separate Ordner für vordefinierte und selbst definierte). Im Skript die Namen ohne xml-Endung einfügen (z. B. 'Strich in Halbgeviertstrich').

Das Skript habe ich bei mir als jsx gespeichert, ein Testlauf war erfolgreich.

Vielen Dank an Peter für den Hinweis und natürlich an den Entwickler des Skripts (ich habe allerdings keinen Link auf das Adobe-Skript-Forum).

Weiterhin einen schönen Tag und Gruss
Marco
...
Marco Morgenthaler
13. Mai 2008, 12:49
Umwandlung einer Kategorienliste mit Tabstopps in Liste mit Aufzählungszeichen statt der Tabstopps
Hallo Lisa

Schön, dass es geklappt hat – auch ohne Grep.

Zum Thema Grep kann ich dir die Einführung von Gerald Singelmann, Moderator in diesem Forum und einer der besten Kenner von Indesign, empfehlen: http://indesign-faq.de/...09/10/grep-intro.pdf

Dann gibt es eine gute Einführung von Peter Kahrel, mit der ich Grep gelernt habe (auf Englisch): http://oreilly.com/catalog/9780596156015

Bald erscheint zudem ein neues Buch mit ausführlichem Teil zu Grep (http://www.indd-skript.de/). Wenn dich auch Skripts interessieren, ist das Buch von Gregor Fellenz sicher eine gute Wahl.

Und last, but not least werden hier im Forum auch immer wieder Grep-Lösungen besprochen und Fragen im Zusammenhang mit Grep beantwortet.

Da ein Grep-Stile Teil des Absatzformats ist, kannst du dieses (zusammen mit dem dazugehörigen Grep-Stil) auch in andere Dokumente importieren (Absatzformate laden …). Grep-Abfragen lassen sich speichern (im Fenster Suchen/Ersetzen). Und aus einem solchen gespeicherten Grep-Ausdruck lässt sich per Copy/Paste auch schnell ein Grep-Stil basteln.

Gruss, Marco
...
Marco Morgenthaler
24. Mär 2011, 10:05
Suchen & Ersetzen ID 4CS: Klammern zur Kursivierung hinzufügen
Hallo Jan-Dirk

Denkbar wäre auch eine einfache GREP-Lösung.

Suchen nach: \((?!.)|(?<!.)\)
Format: Regular (Grundschrift)

Ändern in:
Format ersetzen: ZF Italic

Der Grep sucht nach öffnender bzw. schliessender Klammer in der Grundschrift, wenn nach bzw. vor der Klammer kein Zeichen in Grundschrift steht. Anders gesagt: Wenn der Text innerhalb der Klammern nicht in Grundschrift ist, werden die Klammern ins gewünschte Zeichenformat geändert.

Gruss, Marco
...
Marco Morgenthaler
16. Mär 2011, 14:15
Javascript RegEx GREP Tags
Ahh, genau das war mein Problem – danke Marco

Der hier funktioniert jetzt!
Code
<para[^>]*>((.|\s)+?)</para> 


Er findet wie gewollt nun nicht mehr den gesamten Ausdruck sondern nur zwei vorkommen!

Danke & Gruß
...
kampladden
22. Dez 2010, 13:32
1000er Trennzeichen bei Zahlen
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
...
neige
14. Sep 2007, 11:33
|| automatischer Abstand zwischen 2 aufeinanderfolgenden Absatzformaten
Hallo Kai und Martin,

ich habe gestestet
und komme mit 2 Durchgängen aus.

1. S: \r + Format E: $0###
2. S: ###(\w) E: $1+ Format

Oder liege ich da irgendwo falsch?


Gruß Quarz

--------------------------------------------
InDesign CS4 ver6.04 | WinXP SP3

...
Quarz
26. Apr 2010, 11:55
GREP ~{ ~} ~[ ~]
Quarz hat mir durch eine Rückfrage nach der Bedeutung von ~{ bzw. ~} zu einer interessanten Entdeckung verholfen.

Mit diesen GREP-Ausdrücken werden Anführungszeichen gefunden.
Das ist jedoch kein kryptischer Ersatz für „ oder “ oder ”.
Nein, damit wird nicht nach einem bestimmten Glyphen {einer eindeutigen Zeichenrepräsentation} gesucht, sondern nach einem Zeichen, das unterschiedlich dargestellt werden kann.

~{ findet in einem Text
- mit deutscher Sprache
- mit englischer Sprache
- mit französischer Sprache «

Die gefundenen Glyphen hängen von den Anführungszeichen ab, die in den Voreinstellungen/Wörterbuch bei der jeweiligen Sprache eingestellt sind.

~{ steht für öffnendes doppeltes Anführungszeichen
~} steht für schließendes doppeltes Anführungszeichen
~[ steht für öffnendes einfaches Anführungszeichen
~] steht für schließendes einfaches Anführungszeichen

Diese 'Metazeichen' für die Anführungszeichen dürften vor allem in gemischtsprachigen Dokumenten oder bei Einsatz eines sprachunabhängigen GREP-Ausdrucks in unterschiedlichen einsprachigen Dokumenten von Interesse sein.
...
Martin Fischer
29. Apr 2008, 15:34
GREP - Suche nach Leerzeichen
Hallo!

Über das Menü "Abfrage" ist ja bereits ein String "Mehrere Leestellen in einzelne" vorgegeben.
Ganz am Ende steht - fast unscheinbar das " ".

Gibt es denn hierfür keinen Buchstaben oder sonstiges Zeichen das man eingeben kann?

Ersetzt wird ja durch \s
Also liegt eigentlich die Vermutung nahe, das man doppelte Leerzeichen auch mit \s\s suchen könnte. Bei dieser Suche werden jedoch nicht nur doppelte Leerzeichen gefunden, sondern es wird auch die Absatzmarke miteinbezogen ...
...
Kai Rübsamen
26. Apr 2008, 12:15
| GREP - erste Versuche - Bedeutung der Klammern?!
Hallo!

Ich habe mir hier: http://www.yabb-adobe-doo.com/...gn_cs3_grep_800.html
einen Film über Grep angesehen und dachte zunächst ich hätte es wenigstens ein bisschen verstanden.

Neugierig geworden habe ich dann die Hilfe in Indesign durchgelesen und das verwirrt mich jetzt doch...

1. Die Hilfe schreibt z.B. wenn ich einen Punkt suchen will ist das Zeichen dafür \. damit der Punkt auch als Punkt erkannt wird, aber warum erkennt dann \d kein d sondern ein beliebiges Zeichen? Wo ist die Logik dahinter?
Auch wird der Punkt erkannt wenn ich (\d)["."](\d) anstelle von (\d)\.(\d) schreibe?! > das "." ohne ""

2. Worin besteht der Unterschied zwischen den drei Klammern
a) [ ]
b) ( )
c) { }

Dies wird in der Hilfe leider nicht erklärt, ist aber wahrscheinlich entscheidend für die richtige Suche?!

3. Wie müsste die Abfrage lauten, wenn ich den Punkt gegen ein Komma tauschen will
und dem Komma ein Zeichenformat grün gebe?

Denn bei Suche (\d)["."](\d) ersetze durch $1,$2

wird auch das Zeichen vorher und nachher eingefärbt.
...
Kai Rübsamen
18. Mai 2007, 18:02
GREP Erfahrung
Hallo

Folgende zwei GREP sollten die Zahlen umwandeln:

A) ,(\d{1,2})\>
ändern in: .$1

B) \.(\d{3})
ändern in: ,$1

Grep A sucht nach einem Komma, gefolgt von einer oder zwei Ziffern am Wortende, und ersetzt das Komma durch einen Punkt.

Grep B sucht nach einem Punkt, gefolgt von genau 3 Ziffern, und ersetzt den Punkt durch ein Komma.

GREP A und B können bei Bedarf als Abfrage gespeichert werden.

Gruss, Marco
...
Marco Morgenthaler
23. Jan 2008, 12:39
GREP: Lookbehind UND Lookahead
Hallo Marco,

Code
((?<=S\.)|(?<=Anm\.))( )(?=\d) 


(?<=S\.) -> lookahead nach 'S.'
| -> oder
(?<=Anm\.) -> lookahead nach 'Anm.'
( ) -> Leerzeichen (geht auch ohne die Klammern)
(?=\d) -> lookbehind Ziffer.

Eventuell kann man die Alternative des lookahead ((?<=S\.)|(?<=Anm\.)) noch verkürzen.
...
Martin Fischer
3. Sep 2007, 17:46
Grep: Suche und Ersetzen von Leerzeichen
Hallo Gero

Ich verstehe diesen letzten Beitrag nicht ganz. Warum plötzlich /i, um die Gross-/Kleinschreibung nicht zu beachten? Es ist doch (?i) und das Gegenteil (?-i).

Eine dritte Variante steht im Bonus-Magazin von «Dirty Tricks»: (?!) für Gross-/Kleinschreibung an, (?-!) für aus. Etwas verwirrend …

Zu deinem GREP: \W hinter t verhindert zwar das Auffinden im Satz:
2007 tummelten sich 20 tolle Kinder mit 40 total genervten Eltern, nicht aber in
2007 mümmelten sich 20 mollige Kinder mit 40 miesgelaunten Eltern ein.

Ich glaube, am einfachsten ist das Problem wieder mit einem negativen Lookahead zu lösen:
Code
(?i)(\d) ?(mm|cm|m|g|kg|t)(?!\w)(?-i) 


wobei (?!\w) ausschliesst, dass nach der Masseinheit ein Wortzeichen folgt.

Noch eine letzte Frage: (?-i) muss am Schluss stehen, sonst ist standardmässig die Gross-/Kleinschreibung in Zukunft immer an? Oder warum steht das am Schluss?

Herzliche Grüsse, Marco
...
Marco Morgenthaler
4. Jan 2008, 12:18
Mal weider GREP
Ich brauche Hilfe mit GREP.

Ich möchte alle Stellen Finden, in denen ich [NAME]-Palette geschrieben habe, und durch Palette [NAME] ersetzen.
Der [Name] sind unterschiedlich lange Wörter (ohne eckige Klammer).

Am besten wäre es, wenn [NAME] dann auch noch im ZF Sowieso formatiert werden könnte.

Wie muss der GREP Ausdruck lauten?!?!?!

Edit: Der [Name] ist EIN Wort, dass unterschiedlich lang ist (ohne eckige Klammer).
...
Christoph Steffens
19. Jul 2007, 11:27
Mal weider GREP
Code
\b([^-\s]+)-Palette 

ersetzt durch
Code
Palette $1 

scheint zu funktionieren.
Erklärung:
\b ist eine Wortgrenze
[^...] alle Zeichen, die nicht ... sind
-\s ein - oder ein beliebiger Leerraum
+ eins oder mehrere
() speichere das Gefundene in $1

Wahrscheinlich kann man das \b auch weglassen.

In meinem Testtext kam auch der Begriff "Die Formate-Paletten" vor. Die Mehrzahl von Palette geht bei der Suche durcheinander.
...
Gerald Singelmann
19. Jul 2007, 11:42
Mal weider GREP
Hallo Kai,

dafür brauchts etwas Umschau - was in der Gegend ist (lookaround).
In diesem Fall lookbehind: ?<=

Ersetzefeld:
Code
(?<=Palette )([^\s]+) 


Suchfeld: [leer] + [Formatoptionen]
-----
edit:
Jetzt überlasse ich das Antworten Gerald.
Der ist eh immer einen Kick schneller.
Kein Wunder, hab GREP schließlich von ihm gelernt. ;-)
...
Martin Fischer
19. Jul 2007, 12:37

Aktuell

Aktuell
PDF_korrekturen_300

Veranstaltungen

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen. pdf-icon Hier eine kleine Anleitung.

Veranstaltungen
25.10.2018

Hamburg
Donnerstag, 25. Okt. 2018, 10.39 Uhr

Seminar

Viele Funktionen, für die früher Illustrator benötigt wurde, finden sich heute auch in InDesign. Angefangen bei den Pfadwerkzeugen, mit denen sich Linien und Bezier-Pfade zeichnen lassen, über die regulären Zeichenwerkzeuge für Rahmen und Linien bis hin zum Pathfinder, der Vektorobjekte zerschneiden, verbinden und kombinieren kann: InDesign bietet eine Vielzahl von Vektorgrafik-Werkzeugen, mit denen sich auch komplexe Vektorgrafiken erstellen lassen.

München, Donnerstag, 25.10.2018, Seminargebühr 415,31 (inkl. 19% MwSt), 9.30 Uhr bis 17.30 Uhr

Ja

Organisator: Cleverprinting

Vektorgrafik mit Adobe InDesign und Illustrator
Veranstaltungen
25.10.2018

Schule für Gestaltung Zürich
Donnerstag, 25. Okt. 2018, 17.00 - 19.30 Uhr

Seminar

Folgenden Fragen gehe ich – gemeinsam mit Ihnen – während des Seminars auf den Grund: – Sind heutige Farbsysteme auf crossmediale Ausgaben ausgerichtet? – Wie definiert man Farben für den Einsatz in Office- und Direktmarketing-Softwaren? – Welche Farb-Definitionen muss ein heutiges, crossmediales Corporate-Design beinhalten? – Braucht es dazu neue Systeme und Workflows? – Existieren Hilfsmittel für den crossmedialen Datenaustausch (freieFarbe)? – Ist CMYK in heutigen digitalen Produktionen noch sinnvoll und von Vorteil? – Was ist qualitativ besser – verfahrensangepasst oder ausgabeneutral?

Donnerstag, 25. Oktober 2018, von 17.00 Uhr bis 19.30 Uhr
mit anschliessendem Apéro

viscom-Mitglied: Kostenlos
Nichtmitglied: CHF 250.00, zuzüglich MwSt.

Ja

Organisator: viscom

http://www.viscom.ch/?name=agenda&veranstaltungid=854&datum=25.10.2018&suche=1

Hier Klicken