Autor |
Nachricht |
MarkGrade
Threadersteller
Dabei seit: 06.08.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Mo 18.03.2024 00:11
Titel Grep-Stil "Alle Zeichen zwischen" |
 |
|
Hallo,
ich stehe auf dem Schlauch.
Wie sollte ein GREP-Stil aussehen, mit dem ich z.B. alle Zeichen fett formatieren kann, die sich
zwischen Absatzanfang und dem Leerzeichen hinter dem Wort Uhr befinden.
Danke für die Unterstützung
Mark
|
|
|
|
 |
Mac
Dabei seit: 26.08.2005
Ort: Köln
Alter: 63
Geschlecht:
|
Verfasst Mo 18.03.2024 11:44
Titel
|
 |
|
du suchst für ein Absatzformat, oder?
Mustertext :
Es ist jetzt 14:32 Uhr
Wir treffen uns um 4:43 Uhr
grep:
^.+ \d+:\d+(?!Uhr)
Geht bestimmt auch noch was eleganter
Gerade nach gelesen: hinter dem Uhr.
^.+ \d+:\d+ Uhr
Zuletzt bearbeitet von Mac am Mo 18.03.2024 11:47, insgesamt 2-mal bearbeitet
|
|
|
|
 |
Anzeige
|
|
 |
ceesrad
Dabei seit: 09.03.2018
Ort: -
Alter: 36
Geschlecht:
|
Verfasst Mo 18.03.2024 14:43
Titel
|
 |
|
Hallo Mac,
danke - aber kannst Du ggf. noch ein paar Worte der Erklärung dazu geben?
Das funktioniert sicherlich, aber es wäre (mir) noch eine größere Hilfe, wenn ein Kommentar dazu käme, warum und wie Du Dir diese Lösung ausgedacht hast.
Wenn ich in 5 Jahren per Google-Suche auf diesen Thread stoßen würe, wäre es mir keine Hilfe, diesen einen konkreten Anwendungsfall für "Uhr mit Leerzeichen" herauszukopieren.
Danke.
|
|
|
|
 |
Mac
Dabei seit: 26.08.2005
Ort: Köln
Alter: 63
Geschlecht:
|
Verfasst Mo 18.03.2024 16:04
Titel
|
 |
|
Mustertext :
Es ist jetzt 14:32 Uhr
Wir treffen uns um 4:43 Uhr
grep: ^.+ \d+:\d+ Uhr
^ Absatzbeginn
.+ irgendein oder mehrere Zeichen
[ ] ein Leerzeichen (die Klammern sind nur zur Darstellung des Leerzeichens)
\d+ eine oder mehrere Ziffern
: ein Doppelpunkt
\d+ eine oder mehrere Ziffern
[ ] ein Leerzeichen
Uhr der String Uhr
die andere Version ist etwas komplexer
grep ^.+ \d+:\d+(?!Uhr)
^ Absatzbeginn
.+ irgendein oder mehrere Zeichen
\d+ eine oder mehrere Ziffern
: ein Doppelpunkt
\d+ eine oder mehrere Ziffern
(?!Uhr) ein Negative Lookahead - suche/schau bis zu diesen Zeichen (Uhr)
als Stop aber nicht weiter und schliess sie nicht in den gesuchten String ein.
Hilft das?
Zuletzt bearbeitet von Mac am Mo 18.03.2024 16:05, insgesamt 1-mal bearbeitet
|
|
|
|
 |
ceesrad
Dabei seit: 09.03.2018
Ort: -
Alter: 36
Geschlecht:
|
Verfasst Mo 18.03.2024 16:08
Titel
|
 |
|
Absolut hilft das, vielen Dank!
Ich übergebe zurück an den Threadersteller
|
|
|
|
 |
Mialet
Dabei seit: 11.02.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst Di 19.03.2024 14:56
Titel Re: Grep-Stil "Alle Zeichen zwischen" |
 |
|
[quote="MarkGrade“]alle Zeichen fett formatieren kann, die sich
zwischen Absatzanfang und dem Leerzeichen hinter dem Wort Uhr befinden.[/quote]
Wahrscheinlich hat Mac deine Frage korrekt interpretiert, aber gefragt hast du nur nach:
^.+Uhr
Also ab
^ Absatzanfang
. beliebiges Zeichen
+ ein oder mehrere davon
Uhr beendet den Suchstring
Falls in dem Absatz nur
Uhr
steht, müsste man das beliebige Zeichen statt per + per * auch noch optional machen.
|
|
|
|
 |
Mialet
Dabei seit: 11.02.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst Di 19.03.2024 15:16
Titel
|
 |
|
Nachtrag:
der bzw. die obigen GREPs sind gierig!
Aus dem Absatz
Los geht es um 6:00 Uhr – denkt also daran, eine Uhr einzupacken.
Würde mit der Auszeichnung Fett das folgende:
Los geht es um 6:00 Uhr – denkt also daran, eine Uhr einzupacken.
Falls bereits das erste Vorkommen von Uhr die Suche beenden soll, muss man dem Grep die Gier abgewöhnen:
^.+?Uhr
Zuletzt bearbeitet von Mialet am Di 19.03.2024 15:21, insgesamt 3-mal bearbeitet
|
|
|
|
 |
Mac
Dabei seit: 26.08.2005
Ort: Köln
Alter: 63
Geschlecht:
|
Verfasst Di 19.03.2024 16:29
Titel
|
 |
|
du hast so Recht!
|
|
|
|
 |
|
|
 |
Ähnliche Themen |
ID -GREP Stil - Was, wenn ich das Plus zeichen ändern will?
GREP Suchen & Ersetzen als GREP stil im Format?
Grep für Grep-Stil
Hilfe bei GREP-Stil
Hilfe bei grep Stil...
Hilfe bei Grep Stil...
|
 |