Connect failed: Connection timed out

[GastForen Programme Print/Bildbearbeitung Adobe InDesign grep Problem mit optionalem Leerraum

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

grep Problem mit optionalem Leerraum

Henry
Beiträge gesamt: 967

28. Mär 2016, 17:06
Beitrag # 1 von 12
Bewertung:
(2669 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi und frohe Ostern,
ich habe (bei ID CS_3) Ziffernfolgen in der Art
"00" optionaler Leerraum "12345", also:

a) 0012345
b) 00 12345
c) 00[TAB]12345

und will jeweils nur die nach "00" folgenden Ziffern auswählen!
Am nähesten heran komme ich mit dem grep:
(?<=00(\s{1}|\s{0}))\d+
Dann wird aber bei a) nur "2345" ausgewählt, also die erste Ziffer verschluckt :-(

Gibt es dafür eine Lösung (ohne Extradurchläufe zum Hinzufügen und Wieder-Löschen eines Leerraums) oder muss ich das als "easteregg" einfach abhaken?

(Dieser Beitrag wurde von Henry am 28. Mär 2016, 17:07 geändert)
X

grep Problem mit optionalem Leerraum

Thomas Richard
Beiträge gesamt: 19327

28. Mär 2016, 17:45
Beitrag # 2 von 12
Beitrag ID: #548397
Bewertung:
(2635 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hier funktioniert’s damit:
Code
(?<=00\s)\d+|(?<=00)\d+ 



als Antwort auf: [#548396]

grep Problem mit optionalem Leerraum

Thomas Richard
Beiträge gesamt: 19327

28. Mär 2016, 17:55
Beitrag # 3 von 12
Beitrag ID: #548399
Bewertung:
(2631 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Wenn du damit aber nicht auch das Ende von „James Bond 007" oder „im Jahre 2008" erwischen willst, würde ich das d+ gegen ein d{5} ersetzen.


als Antwort auf: [#548397]

grep Problem mit optionalem Leerraum

pixxxelschubser
Beiträge gesamt: 1708

28. Mär 2016, 22:28
Beitrag # 4 von 12
Beitrag ID: #548402
Bewertung:
(2544 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Unter CS6 muss man beide Möglichkeiten mittels positiven Lookbehind suchen lassen:
((?<=\<00\s)|(?<=\<00))\d{5,}

Ab CS6 geht das einfacher:
00\s?\K\d{5,}

(Das Komma nach der 5 lässt den Grep auch noch mehr als 5 nachfolgende Ziffern finden, aber nicht weniger.)

EDIT
Die Forensoftware fügt im oberen Grep vor der schließenden geschweiften Klammer leider automatisch ein Leerzeichen (zuviel) ein. Dieses bitte entfernen.


als Antwort auf: [#548399]
(Dieser Beitrag wurde von pixxxelschubser am 28. Mär 2016, 22:44 geändert)

grep Problem mit optionalem Leerraum

Quarz
Beiträge gesamt: 3550

28. Mär 2016, 22:54
Beitrag # 5 von 12
Beitrag ID: #548403
Bewertung:
(2522 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo pixxxelschubser,

jetzt verrat mir doch noch bitte,
was das \K bedeutet.

Gruß
Quarz
------------------------------
| Win7/64 Prof. | CS6 ver 8.1 |



als Antwort auf: [#548402]
(Dieser Beitrag wurde von Quarz am 28. Mär 2016, 23:09 geändert)

grep Problem mit optionalem Leerraum

pixxxelschubser
Beiträge gesamt: 1708

28. Mär 2016, 23:18
Beitrag # 6 von 12
Beitrag ID: #548404
Bewertung:
(2499 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
lookbehind


als Antwort auf: [#548403]

grep Problem mit optionalem Leerraum

Thomas Richard
Beiträge gesamt: 19327

28. Mär 2016, 23:30
Beitrag # 7 von 12
Beitrag ID: #548405
Bewertung:
(2493 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf [ Quarz ] jetzt verrat mir doch noch bitte,
was das \K bedeutet.


Erinnerst du dich nicht?
http://www.hilfdirselbst.ch/..._P541921.html#541921


als Antwort auf: [#548403]

grep Problem mit optionalem Leerraum

pixxxelschubser
Beiträge gesamt: 1708

28. Mär 2016, 23:32
Beitrag # 8 von 12
Beitrag ID: #548406
Bewertung:
(2490 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Wink


als Antwort auf: [#548405]

grep Problem mit optionalem Leerraum

Quarz
Beiträge gesamt: 3550

28. Mär 2016, 23:39
Beitrag # 9 von 12
Beitrag ID: #548407
Bewertung:
(2487 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Thomas,

als ich die Frage abgeschickt hatte, da ist es mir eingefallen.
Peinlich, peinlich ;-(

Gruß
Quarz


als Antwort auf: [#548405]

grep Problem mit optionalem Leerraum

Thomas Richard
Beiträge gesamt: 19327

28. Mär 2016, 23:53
Beitrag # 10 von 12
Beitrag ID: #548408
Bewertung:
(2471 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich hab auch erst wieder nachlesen müssen.

Hab es aber dann aus meiner Antwort herausgelassen, da es ja hier um ID CS3 geht.

Ob man nun mit /< noch den Wortanfang voranstellt, oder mittels 5, auch mehr als 5-stellige Ziffern nach der Doppelnull finden lässt, bleibt jetzt dem TO und seinem individuellen Ökosystem überlassen.

Mir stellt sich jetzt nur die Frage, warum die Lookbehindalternative von Pixxelschubser, die sich nur auf die beiden Varianten der Doppelnull beschränkt, ohne die 5 anschliessenden Stellen, bei mir nicht hat funktionieren wollen. Probiert hatte ich es auch, aber gefunden hat er bei mir dann nichts passendes ...?


als Antwort auf: [#548407]

grep Problem mit optionalem Leerraum

Ralf Hobirk
Beiträge gesamt: 5961

29. Mär 2016, 02:15
Beitrag # 11 von 12
Beitrag ID: #548409
Bewertung:
(2366 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Und ich musste das \K auch erstmal ergooglen – offensichtlich war mir Kais Post vom August entgangen…


als Antwort auf: [#548408]

grep Problem mit optionalem Leerraum

Henry
Beiträge gesamt: 967

29. Mär 2016, 10:42
Beitrag # 12 von 12
Beitrag ID: #548414
Bewertung:
(2188 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Dank an alle!
((?<=00\s)|(?<=00))\d+
hat funktioniert (die "00" und "12345" waren übrigens nur exemplarisch).

\K bietet natürlich die simpelste Lösung - da bin ich sogar froh, dass es die in CS3 noch nicht gab, sonst wäre mein ganzes Rumgeeiere ja voll für die Katz/den Osterhasen gewesen ;-)


als Antwort auf: [#548402]
X