[GastForen Programme Print/Bildbearbeitung Adobe InDesign Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

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

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

Minimac
Beiträge gesamt: 55

7. Dez 2019, 00:51
Beitrag # 1 von 14
Bewertung:
(4503 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Liebe Foristen,
in einem Ortsregister möchte ich immer, wenn der 1. Buchstabe im aktuellen Absatz ein anderer ist als im vorherigen Absatz, ein Zeichenformat anwenden. Das könnte ich nun 26 manuel machen oder vielleicht mit einem "intelligenten" Absatzformat.

Das erste Zeichen des aktuellen Absatzes bekomme ich noch hin, aber wie geht das mit dem Vergleich mit dem 1. Zeichen des vorherigen Absatzes? Geht das überhaupt?
Ein lookbehind allein reicht ja nicht, ich brauche ja 2 Fundstellen die dann auch noch verglichen werden müssen.

Die Alternative ist halt, das ganze per Script zu erledigen, aber das ist mir diesmal nicht "smart genug". Hat da jemand eine Idee oder kann wenigsten sagen: vergiss es, das geht nicht per grep sondern nur per Script.

Gruß
Michael
X

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

Kai Rübsamen
  
Beiträge gesamt: 4659

9. Dez 2019, 09:21
Beitrag # 2 von 14
Beitrag ID: #573205
Bewertung:
(4419 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Michael,

Grepstile funktionieren nur absatzweise. D.h. es besteht keine Intelligenz den Inhalt des vorherigen Absatzes innerhalb eines Stils auslesen und es geht in der Tat nur per Skript.

Gruß Kai Rübsamen


als Antwort auf: [#573196]

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

Minimac
Beiträge gesamt: 55

11. Dez 2019, 14:26
Beitrag # 3 von 14
Beitrag ID: #573240
Bewertung:
(4231 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Kai,
gut, wenn das Problem nicht mit einem Absatzformat zu erschlagen ist dann ist das eben so.
Aber denkbar wäre noch, eine Grep Suche zu basteln sofern man dort Absatzübergreifend suchen kann. Denn ich denke, diese Suche ist, wenn das Register mal wieder länger ist, immer noch schneller als wenn ich per Schleife mich durch alle Absätze wühle und dort jeweils das erste Zeichen vergleiche.
Am Ende ist es mir ja egal, ob ich die Suche scripte oder das Register „per Script und Absatzweise“ durchlaufe. Fix soll es halt sein :-)
Prinzipiell interessiert mich eben auch, ob man mit Grep 2 Fundstellen vergleichen kann und je nach Ergebniss „so oder anders“ ersetzen kann.


als Antwort auf: [#573205]

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

Minimac
Beiträge gesamt: 55

12. Dez 2019, 21:32
Beitrag # 4 von 14
Beitrag ID: #573261
Bewertung:
(4165 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, ich nochmal,
hat wirklich keiner eine Idee wie man per Grep in diesem Beispiel das erste B nach dem Axel-Springer-Pl. findet bzw im weiteren Verlauf die anderen "Anfangsbuchstaben"?
Es muß ja nicht unbedingt in ein Absatzformat integriert werden, es reicht, wenn einfach nur die Fundstelle mit einem Zeichenformat belegt wird. Wenn es wirklich nicht mit GREP geht, dann muß ich halt in den Sauren Apfel beißen un mich Zeilenweise per Script durch den Text kämpfen. Nur elegant ist doch anders :-)

Code
Arnoldstr.  E18/19 
Augustenburger Str. B20/21
Axel-Springer-Pl. D/E25
[b]Bahrenfelder Ch. B16-C18
Bahrenfelder Steindamm C18/19



als Antwort auf: [#573240]

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

Thomas Richard
Beiträge gesamt: 18546

13. Dez 2019, 00:20
Beitrag # 5 von 14
Beitrag ID: #573263
Bewertung:
(4147 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich weiß nicht, was dich daran so stört, einfach per Script das erste Zeichen in Zeile n mit dem ersten Zeichen der Zeile n-1 zu vergleichen und im Falle der Ungleichheit oder nicht vorhandensein dem Zeichen in Zeile n einen anderen Stil zu verpassen?

Grep geht halt nun mal absatzweise vor und fällt somit für Absatzübergreifendes aus.


MfG

Thomas


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


als Antwort auf: [#573261]

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

MarioF
Beiträge gesamt: 292

13. Dez 2019, 15:26
Beitrag # 6 von 14
Beitrag ID: #573288
Bewertung:
(4083 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Moin,
woher kommen die Daten des Ortsregister? Ist es eine einmalige Kiste?
---
Viele Grüße
Mario


als Antwort auf: [#573263]

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

Kai Rübsamen
  
Beiträge gesamt: 4659

13. Dez 2019, 18:30
Beitrag # 7 von 14
Beitrag ID: #573294
Bewertung:
(4060 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Michael, die intelligente Lösung wäre das Skript ;-). Du musst ja verschiedene Zeichen über eine variable Länge vergleichen. Wenn du einen Suchstring a … b erfasst hast, müsste ja die GREP-Suche wieder ums eins zurückspringen, damit du b … c vergleichen kannst. Ich mache mir über sowas keine Gedanken mehr. Wenn ich da nicht sofort eine einfache Lösung sehe, schreibe ich mir ein kleines Skript.

Gruß Kai Rübsamen


als Antwort auf: [#573288]

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

Minimac
Beiträge gesamt: 55

16. Dez 2019, 23:49
Beitrag # 8 von 14
Beitrag ID: #573332
Bewertung:
(3566 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Also diese Register kommen aus Stadtplänen oder Landkarten. Die Teile können auch gerne mal größer werden und dann dauern Script eben auch schon mal etwas länger bei mehreren tausend Ortsnamen (Also Kartograph werde ich des öfteren mit derartigen "Texten" konfrontiert und darf die formatieren). Und da diese Formatierungen immer erst ganz zum Schluß kommen wenn schon alles andere fertig ist, pressiert es dann hat auch mal und dann ist es ein Unterschied, ob eine Suche das in 3 Minuten oder 30 Minuten mit einem Script erledigt. Daher war ich auf der Suche nach einer "möglichst schnellen" Bearbeitung.

Das Grep nur Absatzweise funktioniert, glaube ich nicht, man kann ja auch Absatzmarken bzw den Text zwischen mehreren Absatzmarken finden. Absatzformate mit Grep-Stilen sind aber natürlich auf einzelne Absätze "beschränkt". Nur könnte ich ja auch gut damit leben, wenn es "nur" über die "normale" Grep-Suche funktioniert.
Letztendlich wollte ich ja auch in Erfahrung bringen, ob Grep überhaupt Vergleiche wie hier benötigt, durchführen kann.

Als Fazit bleibe ich also erstmal bei meinem einfachen Script welches sich stur durch alle Absätze graben muß auch wenn es viele sind und daher etwas dauert.

Danke an alle, die über mein Problem nachgedacht haben.


als Antwort auf: [#573294]

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

WernerPerplies
Beiträge gesamt: 2526

17. Dez 2019, 07:59
Beitrag # 9 von 14
Beitrag ID: #573335
Bewertung:
(3519 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Moin,

Zitat Daher war ich auf der Suche nach einer "möglichst schnellen" Bearbeitung.


Dann wäre es vielleicht hilfreich, über die Optimierung solch eines Skriptes nachzudenken.

Einen schönen Tag wünscht

Werner Perplies
Auftragsprogrammierung und Skripte für Adobe InDesign
neu: WpsProjectHandler 15.06.2018, Version 1.75, neue Funktionen
Aktuelles
XING


als Antwort auf: [#573332]

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

waldviertler
Beiträge gesamt: 43

17. Dez 2019, 14:42
Beitrag # 10 von 14
Beitrag ID: #573354
Bewertung:
(3480 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Du könntest diese Grep-Suche probieren:

Suchen:
Code
^(\u)(.+?)\r\1 


Ersetzen:
Code
$1\r$1$2\r$1 



Das funktioniert natürlich nur bei den Großbuchstaben - es funktioniert nicht bei zB [b].


Mit einer zweiten Suche dann
Code
^\u$ 


Ersetzen:
gewünschtes Absatzformat zuweisen


mfg
Martin


als Antwort auf: [#573335]

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

Kai Rübsamen
  
Beiträge gesamt: 4659

17. Dez 2019, 15:51
Beitrag # 11 von 14
Beitrag ID: #573357
Bewertung:
(3461 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Michael, du klingst fast trotzig ;-).

GREP funktioniert nicht absatzweise, GREP-Stile aber schon. Wenn dein Skript für diese paar Einträge 30 Minuten dauert, hat Werner recht und man sollte das vielleicht mal optimieren.

Hast du schon mal daran gedacht, per GREP im Skript zu suchen oder per normaler Textsuche? Das hat den Vorteil, dass du einen String mehrfach untersuchen kannst und auch in einem Schritt das Alphabet abarbeiten kannst.

Wie sieht dein Skript-Ansatz bisher aus?

Gruß Kai Rübsamen


als Antwort auf: [#573332]

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

waldviertler
Beiträge gesamt: 43

17. Dez 2019, 15:58
Beitrag # 12 von 14
Beitrag ID: #573358
Bewertung:
(3457 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hier ein besserer Grep-Suchen-Ansatz:

Suche:
Code
^(\u)((.+\r)+)\1 


Ersetzen:
Code
$1\r$1$2$1 



Dann weiter wie in meinem vorherigen Post.

mfg
Martin


als Antwort auf: [#573354]
(Dieser Beitrag wurde von waldviertler am 17. Dez 2019, 16:15 geändert)

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

Minimac
Beiträge gesamt: 55

18. Dez 2019, 12:32
Beitrag # 13 von 14
Beitrag ID: #573371
Bewertung:
(3375 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
-> Kai,
ja manchmal bin ich hartnäckig wenn ich mit einer Lösung nicht 150% zufrieden bin. Dann suche ich gerne mal weiter oder frage Leute, die sich damit besser auskennen. Manchmal reicht ja schon ein veränderter Blickwinkel von außen um einen auf die richtige / bessere Spur zu bringen :-)


-> Martin (du bist mein Held der Woche oder sogar des Jahres),
dein erster Anlauf hat aus
Code
Auburn Walk  D4 
Aughavannagh Rd. J4
Aughrim St. D4/5
Aungier St. G7
Avondale Ave. C6
Avondale Rd. C6
Bachelors Walk E8
Baggot Ln. H10/11
Baggot St., Lower G9-H10
Baggot St., Upper H10


das hier gemacht (Die roten Buchstaben sind "zu viel" :
Code
A 
Aughavannagh Rd. J4
Aughrim St. D4/5
A
Aungier St. G7
Avondale Ave. C6
Avondale Rd. C6
B
Bachelors Walk E8
Baggot Ln. H10/11
B
Baggot St., Lower G9-H10
Baggot St., Upper H10


Mit der 2. Suche konnte ich dann die Zeilen mit dem einzelnen Buchstaben einen Zeichenstil zuweisen. Nur darf bei der 1. Suche nur das allererste A und B gefunden werden und die im speziellen Fall sollen weder A noch in einer eigenen Zeile auftauchen. Wenn ich einen derartigen Index habe, hab ich sogar schon einen GrepStil fertig bekommen, der mit die richtige Formatierung macht

Der 2. Ansatz ist aber aber "die Lösung". Damit wird jeder "Anfangsbuchstabe" des Alphabets erstmal gedoppelt. Wenn, wie in meinem Test, bei Z allerdings nur ein Eintrag steht, oder es bei einem anderen Buchstaben nur "eine Zeile" gibt, dann wird da nichts gefunden. Damit kann ich leben... 1x muß ich ja eh drüber schauen. Da merke ich das dann hoffentlich (auch ich kann mir ja die Anzahl der Ersetzungen ausgeben lassen wenn ich das ganze in ein Script gieße; wenn die nicht = 26 sind dann muß ich eben genau aufpassen beim hin schauen :-) )

Nun, nachdem ich das ganze "am Objekt" getestet habe kann ich sagen, das Martin sich seine goldene Weihnachtskugel verdient hat.
Mit
Code
^(\u)((.+\r)+)\1 

und Ersetzen durch
Code
$1\r$1$2$1 

wird jeweils der das erste Vorkommen von ABC etc gedoppelt.

Im 2. Schritt kann ich dann dieses Dopplungen mit
Code
(^\u)\r(^\u) 

suchen und durch $2 und dem richtigen Zeichenstil ersetzen. Oder, wenn diese Dopplung wirklich einmal erwünscht ist, auch einfach behalten :-)

Ganz viele Dank an Martin. Jetzt mache ich mich an die Arbeit und "optimiere" mein Script indem ich alles darin entsorge und diese 2 Suchvorgänge scripte. Schneller wird es dann wirklich nicht gehen und mein "Zufriedenheitsgrad" hat die oben erwähnten 150% erreicht.


Abschließend wünsche ich noch allen Mitlesern Frohe Weihnachten und einen Guten Rutsch in nächste Jahr.


als Antwort auf: [#573354]

Grep 1. Zeichen im Absatz mit Zeichenstil auszeichen wenn es vom 1. des vorherigen Absatzes abweicht

waldviertler
Beiträge gesamt: 43

18. Dez 2019, 17:17
Beitrag # 14 von 14
Beitrag ID: #573380
Bewertung:
(3345 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Freut mich, wenn ich auch mal helfen konnte!

mfg
Martin


als Antwort auf: [#573371]
X

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
02.11.2020 - 03.11.2020

Digicomp Academy AG, Limmatstrasse 50, 8005 Zürich
Montag, 02. Nov. 2020, 08.30 Uhr - Dienstag, 03. Nov. 2020, 17.00 Uhr

Kurs

Dieser Basic-Kurs ist der perfekte Einstieg in die Welt von InDesign, dem vielseitigen Layout-Programm. Sie lernen, wie InDesign aufgebaut ist, wie saubere Dokumente erstellt werden und wie man korrekt mit gelieferten InDesign-Projekten umgeht.

Preis: CHF 1'400.-
Dauer: 2 Tage

Nein

Organisator: Digicomp Academy AG

Kontaktinformation: Isil Günalp, E-Mailisil.guenalp AT digicomp DOT ch

https://www.digicomp.ch/weiterbildung/software-anwendungs-trainings/adobe-trainings/desktop-publishing/adobe-indesign-cc/kurs-indesign-cc-basic

Veranstaltungen
05.11.2020

Augmented Reality hat sich in den letzten Jahren rasant zu einer nachgefragten Technologie entwickelt.

Sitzungszimmer VSD in Bern - oder Online via ZOOM
Donnerstag, 05. Nov. 2020, 08.30 - 17.00 Uhr

Seminar

Print bietet ein haptisches Erlebnis und besticht noch immer durch seinen guten Ruf als Image-Träger. Und: Print kann mittels neuen Technologien wie Augmented Reality auch zum Türöffner in die digitale Welt werden, verschiedene Medien geschickt miteinander vernetzen und so ganz neue Perspektiven schaffen! Grundlagen und technologische Trends. Dieses Wissen ermöglicht Ihnen, spezielle Angebote und passende Produkte zu erschaffen für Ihre Kunden. Verpassen Sie nicht den Anschluss, investieren Sie ein wenig Zeit an diesem Tages-Seminar vom Donnerstag, 5. November 2020.

Aktuell planen wir dieses Seminar vor Ort - je nach Stand der Pandemie bieten wir dieses Seminar als ZOOM-Meeting Online an.

Ja

Organisator: publishingNETWORK und VSD

Kontaktinformation: René Theiler, E-Mailrene.theiler AT vsd DOT ch

https://www.vsd.ch/2020/10/01/seminar-augmented-reality-print-als-tueroeffner-in-die-digitale-welt/

Augmented Reality – Print als Türöffner in die digitale Welt

Neuste Foreneinträge


cPanel Datenbank Eintrag nicht möglich

Ich mochte E-Mail mit PHP senden

Formular / leere Options ausblenden

Farbeinstellungen zeigen falschen Einstellungsnamen

Bedingter Text

Hilfe: Text bei Absturz verschwunden, Endnoten noch da

Pages: geteilte Fußnoten

Alternativen zu Acrobat

Shortcut funktioniert nicht mehr

HDS eMail-Benachrichtigungen ???
medienjobs