Seite 1 von 1

Nach Muster suchen und ersetzen

Verfasst: Fr 18. Jun 2021, 10:51
von spade
Ich würde gerne Datumsangaben formatieren und dafür Muster verwenden, z. B. $.$.$$$$ und das ersetzen mit 0$1.0$2.$3$4$5$6, um aus 6.6.1966 06.06.1966 zu machen. Ich habe es mit dem regulären Ausdruck [:digit:]+.[:digit:]+.[:digit:]+[:digit:]+[:digit:]+[:digit:]+ versucht, und auch Datumsangaben wie 06.6.1966 oder 6.06.1966 gefunden. Was mache ich hier falsch?

Auch ist mir nicht klar, was ich in das Ersetzen-Feld eintrage, um die fehlenden Nullen eingefügt zu bekommen.

Für etwas Nachhilfe wäre ich sehr dankbar.

Mit freundlichem Gruß

Frank

Re: Nach Muster suchen und ersetzen

Verfasst: Fr 18. Jun 2021, 11:35
von Pit Zyclade
spade hat geschrieben:
Fr 18. Jun 2021, 10:51
um aus 6.6.1966 06.06.1966 zu machen...
Bin nur experimentell..., die Experten werden noch tätig werden.

1. Schritt:
suchen: [:digit:]\.[:digit:]\.[:digit:][:digit:][:digit:][:digit:]
ersetzen: 0&

Dieser Schritt macht aus 6.6.1966 schon mal 06.6.1966 (und ähnliche Beispiele)

2. Schritt:
suchen: \.([:digit:])?\.
(findet alle nur einstelligen Monatsangaben)
ersetzen:
.0$1.

Viel Erfolg!

Re: Nach Muster suchen und ersetzen

Verfasst: Fr 18. Jun 2021, 12:13
von Mondblatt24
Hallo,
ich kann eine Lösung anbieten, ob das der Weisheit letzter Schluss ist, kann ich aber nicht beschwören.


Suchen: (\d{1}\.)(\d{1}\.)(\d{4}) (findet alle Daten im Format T.M.JJJJ)

Ersetzen: 0$10$2$3 (macht daraus TT.MM.JJJJ)


Gruß
Peter

Re: Nach Muster suchen und ersetzen

Verfasst: Fr 18. Jun 2021, 12:52
von Wanderer
Ich würde eher mit
^(\d{1}\.) und 0$1. fur die Ziffer am Anfang
und
\.(\d{1})\. mit .0$1. für den mittleren Teil arbeiten.

Aber die eigentliche Frage ist für mich:
Warum aus den Datums-Texten keine echten Daten (Tageszahlen) fur Calc machen und diee nach Belieben formatieren? Stehen die Daten irgendwo im Text? Dann funktioniert mein ^ z.B. nicht und es wäre sinnvoller dort auf Leerzeichen oder Wortgrenze zu testen... oder Monddblatts Vorschlag zu nehmen.

Bei dem müssen evtl noch die Varianten
tt.m.yyyy und t.mm.yyyy analog nachgearbeitet werden, wenn ich da nichts übersehen habe.

Mfg, Jörn

Re: Nach Muster suchen und ersetzen

Verfasst: Fr 18. Jun 2021, 12:54
von miesepeter
[x]Reguläre Ausdrücke
Suchen:

Code: Alles auswählen

(\D)(\d\.)(\d)
Ersetzen:

Code: Alles auswählen

$10$2$3
Diese SUCHEN&ERSETZEN-Routine zweimal durchlaufen lassen. That's all.
Ciao

[EDIT]Bei manchen Texten könnte evtl. ein Fehltreffer auftreten, z.B. bei Libreoffice 7.1.3.2.
Hier müsste man bei einem weiteren Suchlauf die einzelnen Zahlen ansehen und manuell berichtigen...

Re: Nach Muster suchen und ersetzen

Verfasst: Fr 18. Jun 2021, 13:03
von Pit Zyclade
@Mondblatt
Deine Suche habe ich mit \b am Anfang verfeinert! Sonst schlägt sie unerwünscht bei 06.5.2020 zu!

--

Meine momentane Lösung in einem Ritt
(aber ich gebe zu, dass die Suche bei mir auch rot markiert ist, obwohl sie funktioniert):

Suche: \b([:digit:])?\.([:digit:])?\.([:digit:][:digit:][:digit:][:digit:])?
Ersetzen: 0$1.0$2.$3
Datum..odt
Meine Testdatei
(8.85 KiB) 78-mal heruntergeladen
ABER bei gemischten Datumsangaben wie 5.06.2020 oder 06.5.2020 schlägt diese Suche nochnicht zu.

Re: Nach Muster suchen und ersetzen

Verfasst: Fr 18. Jun 2021, 13:20
von Mondblatt24
Hallo Pit,
Pit Zyclade hat geschrieben:
Fr 18. Jun 2021, 13:03
Deine Suche will bei mir nicht funktionieren...
kann ich nicht nachvollziehen.
Screenshot_ 2021-06-18 13 13 02.png
Screenshot_ 2021-06-18 13 13 02.png (21.25 KiB) 1808 mal betrachtet
Pit Zyclade hat geschrieben:
Fr 18. Jun 2021, 13:03
ABER bei gemischten Datumsangaben wie 5.06.2020 oder 06.5.2020 kommt auch nur Mist raus.
Wie @Wanderer schon geschrieben hat müssten die anderen Muster separat gesucht werden.


Gruß
Peter

Re: Nach Muster suchen und ersetzen

Verfasst: Fr 18. Jun 2021, 13:32
von Pit Zyclade
@Mondblatt24

Hallo Peter

Ja, die Variation mit der Anzahl der Zeichen ist schon raffiniert.
Und ich war zu langsam, habe zuerst ein Problem mit der deiner Suche gehabt, komisch.

Leider hat LO da ne Macke, denn 06.5.2020 wird ab der zweiten Stelle auch gefunden, deshalb habe ich endgültig \b vor das Ganze gepackt.

@wanderer

Hallo Jörn
Du hast ebenfalls extrem schnell reagiert. So habe ich deinen Beitrag erst wesentlich später gelesen. War vertieft...

Also Danke an euch beide!!!
Hoffentlich freut sich der TO (thread opener, hahaha)

Gruß
Pit

Re: Nach Muster suchen und ersetzen

Verfasst: Fr 18. Jun 2021, 13:57
von Mondblatt24
Hallo Pit,

Clever das mit der Wortgrenze.

Steht das Datum im Text, geht es auch ohne.

Gruß
Peter

Re: Nach Muster suchen und ersetzen [GELÖST]

Verfasst: Fr 18. Jun 2021, 18:18
von spade
Herzlichen Dank für Eure Vorschläge.

Ich bin jetzt mit Peters Muster der Lösung nahe genug gekommen; zumindest beim Finden der Datumsangaben. Das Ändern habe ich dann doch lieber manuell gemacht.