Forenindex » Programme » Print/Bildbearbeitung » Adobe InDesign » GREP Suchen/Ersetzen von Wochentagen

GREP Suchen/Ersetzen von Wochentagen

Beobachter
Beiträge gesamt: 136

7. Mai 2018, 15:45
Bewertung:

gelesen: 6587

Beitrag als Lesezeichen
Guete Tag
In einer Grepsuche möchte ich die Wochentage finden: Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag, Sonntag

Ersetzten möchte ich die Wochentage in die jeweils ersten beiden Buchstaben

Mo, Di, Mi, Do, Fr, Sa, So

Beispiel: Suche Montag ersetze mit Mo

Kann ich alle Wochentage in einer Suchen/Ersetzen Abfrage machen und wenn ja wie, wie lautet die entsprechende Grep Suche.

Danke für eure Hilfe.
Gruess, Michel

GREP Suchen/Ersetzen von Wochentagen

Ralf Hobirk
Beiträge gesamt: 5961

7. Mai 2018, 16:15
Bewertung:

gelesen: 6582

Beitrag als Lesezeichen
Hallo Beobachter,

ich würde das S&E mit einem kleinen Script durchführen:

Code
app.findTextPreferences = null;  
app.changeTextPreferences = null;
app.findTextPreferences.findWhat = 'Montag';
app.changeTextPreferences.changeTo = 'Mo';
app.activeDocument.changeText();

]app.findTextPreferences = null;
app.changeTextPreferences = null;
app.findTextPreferences.findWhat = 'Dienstag';
app.changeTextPreferences.changeTo = 'Di';
app.activeDocument.changeText();


Für die restlichen Wochentage einfach duplizieren.

Wenn du deutlich mehr als diese 7 Begriffe hast, empfiehlt sich ein Script, dass eine CSV-Liste auslesen kann. Ich mache damit z. B. Übersetzungen von Deutsch auf Englisch.

---
Viele Grüße,
Ralf
---
iMac i7 (18,3) 4,2 GHz, 32 GB 10.15.7 Catalina | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB, 10.13.6 High Sierra | Mac Mini (6,1) als Server 2,5 GHz, 8 GB, 10.13.6 High Sierra | CC 2021 (ID 16.3.2)

GREP Suchen/Ersetzen von Wochentagen

Beobachter
Beiträge gesamt: 136

7. Mai 2018, 17:04
Bewertung:

gelesen: 6570

Beitrag als Lesezeichen
Danke für das Grep.
Trotzdem nochmals, ginge auch eine S/E Abfrage?

GREP Suchen/Ersetzen von Wochentagen

Ralf Hobirk
Beiträge gesamt: 5961

7. Mai 2018, 17:14
Bewertung:

gelesen: 6566

Beitrag als Lesezeichen
Das ist kein GREP, sondern Text S&E ;-) Gibt's natürlich auch mit GREP.

S&E-Mehrfachsuche mit einer Abfrage geht nicht.

---
Viele Grüße,
Ralf
---
iMac i7 (18,3) 4,2 GHz, 32 GB 10.15.7 Catalina | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB, 10.13.6 High Sierra | Mac Mini (6,1) als Server 2,5 GHz, 8 GB, 10.13.6 High Sierra | CC 2021 (ID 16.3.2)

GREP Suchen/Ersetzen von Wochentagen

Beobachter
Beiträge gesamt: 136

7. Mai 2018, 17:23
Bewertung:

gelesen: 6564

Beitrag als Lesezeichen
Ja, sorry, ich meinte natürlich ein Script und nicht Grep.
Das heisst, in einem Script ist eine mehrfache S/E Abfrage möglich, aber nicht in im "klassischen" S/E Fenster.
Danke, nochmals.

GREP Suchen/Ersetzen von Wochentagen

Ralf Hobirk
Beiträge gesamt: 5961

7. Mai 2018, 17:28
Bewertung:

gelesen: 6560

Beitrag als Lesezeichen
;-)

Mit dem richtigen Script sind die Möglichkeiten fast unbegrenzt. Vieles in ID geht nicht im GUI, sondern nur per Script.

---
Viele Grüße,
Ralf
---
iMac i7 (18,3) 4,2 GHz, 32 GB 10.15.7 Catalina | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB, 10.13.6 High Sierra | Mac Mini (6,1) als Server 2,5 GHz, 8 GB, 10.13.6 High Sierra | CC 2021 (ID 16.3.2)

GREP Suchen/Ersetzen von Wochentagen

Thomas Richard
Beiträge gesamt: 19334

7. Mai 2018, 17:45
Bewertung: ||

gelesen: 6557

Beitrag als Lesezeichen
Such mal damit:

Code
(?<=Mo|Di|Mi|Do|Fr|Sa|So)(ntag|enstag|ttwoch|nnerstag|eitag|mstag|nntag) 

und ersetze durch 'nichts'.

Findet auch Sattwoch und Domstag, sollten aber eigentlich nicht vorkommen ;-)

Etwas absichern liesse es sich, wenn man hinter die zu tilgenden Teile noch ein zu findendes Wortende setzt, so würde ein Mittwochmorgen nicht zerstört:
Code
(?<=Mo|Di|Mi|Do|Fr|Sa|So)(ntag|enstag|ttwoch|nnerstag|eitag|mstag|nntag)\> 



MfG

Thomas


Und wenn dir geholfen wurde, hilf uns, dies auch weiterhin zu können.
http://www.hilfdirselbst.ch/info/

(Dieser Beitrag wurde von Thomas Richard am 7. Mai 2018, 17:48 geändert)

GREP Suchen/Ersetzen von Wochentagen

Thomas Richard
Beiträge gesamt: 19334

7. Mai 2018, 21:24
Bewertung:

gelesen: 6508

Beitrag als Lesezeichen
Auch 'Mittwochs Ruhetag’ würde vom zweiten GREP verschont.

In dem Fall natürlich nicht durch 'nichts' ersetzen sondern durch
Code
\> 



... was aber nicht funktioniert. Er setzt dann \> ein ... grmpfl!


... also, obigem Grep noch einen positiven Lookahead verpasst:

Code
(?<=Mo|Di|Mi|Do|Fr|Sa|So)(ntag|enstag|ttwoch|nnerstag|eitag|mstag|nntag)(?=\>) 


Und doch ne leere 'Ändern in:' Zeile.


PS: Falls Erklärung fürs wie und warum erwünscht ist, einfach melden. Falls selbsterklärend, auch gut ;-)


MfG

Thomas


Und wenn dir geholfen wurde, hilf uns, dies auch weiterhin zu können.
http://www.hilfdirselbst.ch/info/

(Dieser Beitrag wurde von Thomas Richard am 7. Mai 2018, 21:30 geändert)

GREP Suchen/Ersetzen von Wochentagen

Thomas Richard
Beiträge gesamt: 19334

7. Mai 2018, 21:47
Bewertung:

gelesen: 6502

Beitrag als Lesezeichen
Ich habs gerade auch mal für die Monate und eine Verkürzung auf drei Buchstaben umgestrickt:

Code
(?<=Jan|Feb|Mär|Apr|Mai|Jun|Jul|Aug|Sep|Okt|Nov|Dez)(uar|ruar|z|il|i|ust|tember|ober|ember)(?=\>) 


Ersetzung je nach Gusto per 'nichts' oder Punkt.

Je üppiger die Kombinationsliste aus voranstehenden Bedingungsbuchstaben und eigentlichen Fundstücken wird, je größer das Risiko, etwas zu erwischen, was man eigentlich nicht finden wollte, in dem Fall z.B. Märi oder Dezi.
Oder umgekehrt, der Mai als nicht zu kürzender Monat flutscht auch durch.


MfG

Thomas


Und wenn dir geholfen wurde, hilf uns, dies auch weiterhin zu können.
http://www.hilfdirselbst.ch/info/

GREP Suchen/Ersetzen von Wochentagen

Beobachter
Beiträge gesamt: 136

8. Mai 2018, 10:17
Bewertung:

gelesen: 6416

Beitrag als Lesezeichen
Danke Thomas für deine Arbeit, deine Beispiele helfen mir schon deutlich weiter.
Gruess, Michel

GREP Suchen/Ersetzen von Wochentagen

Ingo Herber
Beiträge gesamt: 454

8. Mai 2018, 14:17
Bewertung:

gelesen: 6392

Beitrag als Lesezeichen
Hallo Thomas,

sehr schöner GREP.
Nur stutze ich ein wenig, da ich März als Mrz und nicht Mär abgekürzt hätte. Nur klappt das dann nicht mehr mit der Formel. :-)
Die Schreibweise "Mrz" gibt auch Windows im Datumsformat vor, das ist (glaube ich) auch die DIN-Schreibweise. So auf Anhieb habe ich aber nichts bei Duden gefunden.

Gruß,
Ingo
_______________________
Windows 10 prof. | Adobe CC 2023 | Adobe CC 2024

GREP Suchen/Ersetzen von Wochentagen

Thomas Richard
Beiträge gesamt: 19334

8. Mai 2018, 14:58
Bewertung:

gelesen: 6385

Beitrag als Lesezeichen
Hallo Ingo,


wie du selber bemerkt hast, ist es es was ganz anderes, ob ich von 7 oder 12 Worten alles bis auf die ersten 2 oder 3 Buchstaben wegschneide, oder bei einem davon auch in den Innereien herumfuhrwerke.

Im ersten Fall suche ich 7*7=49 (von denen es aber nur 7 gebräuchliche gibt) respektive 11*11=121 verschiedene Wörter, trenne sie ALLE in einen zu erhaltenden Bestandteil und den Rest, der einfach IMMER getilgt wird.

Somit müsste der März gesondert gehandelt werden, wenn man es denn Normgerecht bräuchte, da es nicht mehr erwünscht ist, ALLE Funde IMMER gleich zu behandeln:

Suche nach:
Code
(?<=\<M)(ärz)(?=\>) 

Ändern in:
Code
rz. 



MfG

Thomas


Und wenn dir geholfen wurde, hilf uns, dies auch weiterhin zu können.
http://www.hilfdirselbst.ch/info/

(Dieser Beitrag wurde von Thomas Richard am 8. Mai 2018, 15:07 geändert)

GREP Suchen/Ersetzen von Wochentagen

Ingo Herber
Beiträge gesamt: 454

8. Mai 2018, 16:22
Bewertung:

gelesen: 6373

Beitrag als Lesezeichen
Hallo Thomas,
vielen Dank für die ausführliche Antwort.

Zitat ...von denen es aber nur 7 gebräuchliche gibt

... mittlerweile hört man auch öfter vom Framstag. :-)
Also Vorsicht, wenn die Suche bei Texten von PENNY ausgeführt wird.

Gruß,
Ingo
_______________________
Windows 10 prof. | Adobe CC 2023 | Adobe CC 2024

GREP Suchen/Ersetzen von Wochentagen

Thomas Richard
Beiträge gesamt: 19334

8. Mai 2018, 22:55
Bewertung:

gelesen: 6327

Beitrag als Lesezeichen
Antwort auf: Also Vorsicht, wenn die Suche bei Texten von PENNY ausgeführt wird.

Keine Bange, der GREP ist framstagssicher.

Weil, wie bei der von dir gewünschten Mrz.-Abkürzung in diesem Fall ein zusätzlicher Buchstabe hinzugekommen ist. Framstag enthält den 2. Buchstaben des Wortes Freitag und des Wortes Samstag, wird somit also nicht von meinem GREP gefunden nur Frmstag oder Saeitag würden Probleme bereiten.

Ums für die nicht programmieraffinen zu verdeutlichen:

Einer Abkürzung, die wirklich nur hinten kürzt, also am Ende abschneidet, was vernachlässigbar erscheint, ist mit den obigen Methoden beizukommen.

Bei deutschen KFZ-Kennzeichen wären das zum Beispiel: F-rankfurt, K-öln, DA-rmstadt oder BO-chum.

Abkürzungen die eigentlich Komprimierungen sind, also zwischendrin Wortteile weg lassen, ist so nicht beizukommen, als Beispiel A-schaffen-B-urg, M-ain-Z oder H-ansestadt H-amburg, wo dann erschwerend auch noch ne Wortgrenze hinzukommt.

Wenn eben kein regulärer Ausdruck (das RE in GREP steht für Regular Expression) vorliegt, dem eine konkrete Gleichförmigkeit oder Struktur innewohnt, ist man mit den von Ralf anfangs angesprochenen Ersetzungslisten deutlich besser bedient, die den Text ein ums andere mal auf der Suche nach EINEM konkreten Suchbegriff abgrast, um das ganze dann für die nächsten Listeneinträge zu wiederholen.


MfG

Thomas


Und wenn dir geholfen wurde, hilf uns, dies auch weiterhin zu können.
http://www.hilfdirselbst.ch/info/

GREP Suchen/Ersetzen von Wochentagen

pixxxelschubser
Beiträge gesamt: 1708

8. Mai 2018, 23:05
Bewertung:

gelesen: 6325

Beitrag als Lesezeichen
Hallo Thomas,
nette Spielwiese.
Wink

Ein paar kleine Gedanken dazu:
Anstatt alles mit einzeln hintereinander geschalteten Oder-Verkettungen
Code
(?<=Mo|Di|Mi|Do|Fr|Sa|So)(ntag|enstag|ttwoch|nnerstag|eitag|mstag|nntag)(?=\>) 

könntest du die „Endungen“ der Wochentage etwas performanter mit
Code
(nn)?e??[enmr]??([inst]tag|ttwoch)\b 

finden.


Und um es mit deinen Worten zu sagen
Zitat … Etwas absichern liesse es sich, wenn man [edit] unter Zuhilfenahme eines negativen Lookbehinds nach den kompletten Wochentagen sucht [\edit], so würde ein Mittwochmorgen und ein [edit]St. Nimmerleinstag[\edit] nicht zerstört …

also etwa in der Art:
Code
(D[io]|Fr|M[io]|S[ao])\K(nn)?e??[enmr]??([inst]tag|ttwoch)\b 


Wahrscheinlich gibt es auch noch deutlich besserer Varianten – aber leider ist mein Grep in letzter Zeit etwas eingerostet.


Wink
Viele Grüße
pixxxelschubser




Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean.

Isaac Newton


GREP Suchen/Ersetzen von Wochentagen

Ralf Hobirk
Beiträge gesamt: 5961

8. Mai 2018, 23:51
Bewertung:

gelesen: 2094

Beitrag als Lesezeichen
Uppps… Ihr habt jetzt gezeigt, dass mit GREP doch ne ganze Menge mehr geht als ich im ersten Moment dachte… Aber mal ganz ehrlich…

Der Zeitaufwand solche GREPs zu konstruieren und zu testen, ist enorm. Mit dem von mir oben geposteten Scriptcode oder (wenn es um eine Vielzahl von zu ersetzenden Begriffen geht) der Ersetzung mittels Script und CSV-Liste wäre der komplette Job erledigt, bevor ein solcher GREP überhaupt fehlerfrei läuft. Und im Gegensatz zu S&E lässt sich ein Script auf eine Tastenkombi legen…

Trotzdem… Es macht Spaß, die "Spielwiese" zu verfolgen…

---
Viele Grüße,
Ralf
---
iMac i7 (18,3) 4,2 GHz, 32 GB 10.15.7 Catalina | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB, 10.13.6 High Sierra | Mac Mini (6,1) als Server 2,5 GHz, 8 GB, 10.13.6 High Sierra | CC 2021 (ID 16.3.2)

GREP Suchen/Ersetzen von Wochentagen

Uwe Laubender
Beiträge gesamt: 5316

9. Mai 2018, 08:19
Bewertung:

gelesen: 2076

Beitrag als Lesezeichen
Zitat von Thomas Richard Keine Bange, der GREP ist framstagssicher. …


Hallo Thomas,
dachtest Du an dieses herrliche Buch von Paul van Herck:
https://www.amazon.de/...-Herck/dp/3453306953
*****
Mit herzlichem Gruß,
Uwe Laubender

GREP Suchen/Ersetzen von Wochentagen

Thomas Richard
Beiträge gesamt: 19334

10. Mai 2018, 18:53
Bewertung:

gelesen: 2045

Beitrag als Lesezeichen
Antwort auf: dachtest Du an dieses herrliche Buch von Paul van Herck:
https://www.amazon.de/...-Herck/dp/3453306953

Nein, ich hatte nichtmal eine Ahnung, dass diese Wortschöpfung schon so alt ist und nicht auf dem Mist eines Penny Werbetexters gewachsen ist.

Aber als mir nach dem Erstellen meines Greps bewusst wurde, dass er alle Kombinationen aus den 7 Wochentagsanfängen und den -enden findet, war der Framstag das erste was mir spontan einfiel, was ich aber gleich ausschliessen konnte. Für Dintag, Mintag, Dontag, Frntag, ... hab ich dann noch etwas länger grübeln müssen, um sicher zu sein, dass mir da nichts in die Quere kommt, das im eigentlichen Fokus des Greps nicht angestrebt war.


MfG

Thomas


Und wenn dir geholfen wurde, hilf uns, dies auch weiterhin zu können.
http://www.hilfdirselbst.ch/info/

GREP Suchen/Ersetzen von Wochentagen

klasinger
Beiträge gesamt: 1671

14. Mai 2018, 12:09
Bewertung:

gelesen: 1776

Beitrag als Lesezeichen
…noch als Zusatzinfo: Verschiedene GREPs lassen sich mit dem Script Chain GREP von Gregor Fellenz in eine Script gießen (https://www.publishingx.de/dokumente/).

Mit freundlichen Grüssen
Klaas Posselt
--

Klaas Posselt
digital Prepress & ePublishing Consulting
https://www.einmanncombo.de