Seite 1 von 1

String ersetzen

Verfasst: Mo 29. Apr 2024, 22:23
von El Schwalmo
Ich habe ein vermutlich nicht häufiges Problem. Da ich mit mehreren Programmen parallel arbeite, muss ich ab und an 'Zwischentexte' erstellen. Beispielsweise TXT-Dateien, die HTML-Tags enthalten.

Dabei entstehen manchmal mehrere Absätze hintereinander, also

<p>
<p>
<p>

Wenn ich in der Suche mit regulären Ausdrücken <p>$ (oder ^<p>) als Suchstring eingebe, findet das Programm wie gewünscht eine Zeile und ich kann die löschen.

Ich möchte aber nur die doppelten <p> entfernen.

Wenn ich als Suchstring <p>$<p>$ (oder irgendwelche Kombinationen von $ und ^ und <p>) eingebe, wird nichts gefunden.

Hat jemand eine Idee?

Re: String ersetzen

Verfasst: Mo 29. Apr 2024, 23:12
von Dircules
Leider eines der vielen Beispiele, dass LibreOffice zwar ein vielversprechendes Projekt, aber oft auch ein kleines Dummchen ist, das noch viel zu lernen hat...
https://ask.libreoffice.org/t/find-doub ... eaks/63964

Re: String ersetzen

Verfasst: Di 30. Apr 2024, 08:37
von Pit Zyclade
Dircules hat geschrieben:
Mo 29. Apr 2024, 23:12
, dass LibreOffice zwar ein vielversprechendes Projekt, aber oft auch ein kleines Dummchen ist, das noch viel zu lernen hat...
... Und du auch, denn LO ist kein für Webtexte ausgewiesenes Programm.

Re: String ersetzen

Verfasst: Do 2. Mai 2024, 17:07
von Dircules
Der Sinn deiner Antwort erschließt sich mir nicht ganz. Writer ist ein textverarbeitendes Programm, und seine Search/Replace-Fähigkeiten sollten vor Zeilenwechseln eigentlich nicht einknicken. Dabei sollte es auch wurscht sein, ob in den Zeilen nun
<p>
<p>
oder
Hallo Pit,
vielen Dank für deine freundliche Art

steht.

Re: String ersetzen

Verfasst: Fr 3. Mai 2024, 10:12
von Pit Zyclade
Zweimaliges Absatzzeichen findet writer ja auch nicht mit regulären Ausdrücken!

Hingegen
<p><p>
kann writer mit regulären Ausdrücken finden, nämlich mit () für Gruppe und {} für Wiederholung, also
(<p>){2}

Warum $ , welches für Absatz=Zeilenwechsel steht, in einer Gruppe stört, mußt du die Leute fragen, die die regulären Ausdrücke erfanden.

Man hat zwar Befehls-Zeichen erfunden, damit reguläre-Ausdrücke-Zeichen als normale Zeichen gedeutet werden, aber umgekehrt gibt es wohl keine entsprechenden. Also wird $ in der Gruppe immer als Dollarzeichen gewertet, aber nicht als Absatzzeichen.

Re: String ersetzen

Verfasst: Fr 3. Mai 2024, 14:28
von miesepeter
Mit AltSearch.oxt kann man immerhin mit [::BigBlock::] über einen Absatz hinausreichenden Text markieren.

Beispiel für Markierung über zwei Absätze hinweg:

Code: Alles auswählen

<p>[::BigBlock::]<p>
Bei meinen weiteren Versuchen wurden jedoch auch nicht-leere Absätze mit einbezogen. Nach dem Löschen werden möglicherweise leere Absatzmarken zurückbleiben, die in einem zweiten Durchlauf getilgt werden könnten.
Das wäre vielleicht ein Ansatz für weitere Versuche.

Weitere Tests mit Notepad++ oder Notepadqq waren bei mir nicht erfolgreich, vermutlich, weil ich einfach zu wenig weiß... ;)

Re: String ersetzen

Verfasst: Sa 4. Mai 2024, 02:59
von Dircules
Für das konkrete Problem kann ich z. B. Textpad empfehlen, wo du mit dem Schalter "Reguläre Ausdrücke" die Zeichenfolge <p>\n<p> suchst. Habe ich gerade ausprobiert, hat funktioniert. Word kann es auch (mit <p>^p<p>), aber wir haben uns ja nicht LibreOffice angeschafft, um beim ersten Wehwehchen reumütig zu Papa Microsoft zurückzukriechen.

Re: String ersetzen

Verfasst: So 5. Mai 2024, 08:14
von Pit Zyclade
miesepeter hat geschrieben:
Fr 3. Mai 2024, 14:28
Mit AltSearch.oxt kann man immerhin mit [::BigBlock::] über einen Absatz hinausreichenden Text markieren.

Beispiel für Markierung über zwei Absätze hinweg:

Code: Alles auswählen

<p>[::BigBlock::]<p>
...
Du überraschst mich mit deinem Wissen immer wieder!
Aber dennoch brauchte ich eine Erleuchtung. AltSearch.oxt habe ich auch drauf. Gerade in der Anpreisung vor dem Runterladen aus dem Web wurde das Beispiel mit dem BigBlock angezeigt. Aber die verfügbaren Programmhilfe muß man erst einmal suchen, bis man das (?) rechts weiter unten findet.
Ist enorm, was alles möglich ist.
Brüderliche Kampfesgrüße zum x.Mai

Re: String ersetzen

Verfasst: So 5. Mai 2024, 09:32
von miesepeter
OT
Pit Zyclade hat geschrieben:
So 5. Mai 2024, 08:14
Brüderliche Kampfesgrüße zum x.Mai
Du bist halt schon auch ein "Käpsele". Danke dir.