Re: [de-users] Fehler? per RegEx „Suchen und Ersetzen“ in BasicIDE

2019-01-15 Diskussionsfäden Jürgen Klatt

Hallo Gerhard,

vielen Dank für Deine Erläuterungen.

Man kann zwar darüber streiten, wie weit in der Basic-IDE die 
Unterstützung der regulären Ausdrücke nötig ist

Streiten nicht! Nötig schon!
Ich nutze die IDE häufiger und "Suchen und Ersetzen" innerhalb der IDE 
ebenfalls.
Als User ist es für mich wenig verständlich, warum die "Suchen und 
Ersetzen" Funktion in Writer
anderes ausgeführt wird, als in der BasicIDE. Es handelt sich doch im 
Grunde in beiden Fällen um XML-basierte Dateien.

Content.xml  und MeinMakro.xba
Wie diese Dateien im Speicher behandelt werden, wenn sie geladen sind, 
dazu kann ich nichts sagen.


Nun sei es drum. Was nicht existiert, programmiert man sich:-)

Viele Grüße

Jürgen

Am 14.01.2019 um 00:08 schrieb Gerhard Weydt:

Hallo Jürgen,

da kommen zwei Probleme zusammen:
1. reagiert die Basic-IDE auf .* anders: es wird bei "Nächsten suchen" 
der Teilstring ab der Cursorposition markiert, beim nächsten Klick auf 
die gleiche Schaltfläche gar nichts, beim nächsten dann der Teilstring 
ab dem zweiten Zeichen, dann wieder nichts usw. Ich nehme an, dass die 
Kombination ".*", auch wenn sie wie die Kombination zweier elementarer 
regulärer Ausdrücke aussieht, extra behandelt werden muss, was wohl 
nicht richtig geschieht.
2. wird die Logik mit der Klammer und der Bezug darauf mit $ nicht 
berücksichtigt, das passiert genausowenig z.B. bei einer Suche "(ab)" 
und Ersetze durch  "blabla $1".
Richtig ist das sicher nicht. Man kann zwar darüber streiten, wie weit 
in der Basic-IDE die Unterstützung der regulären Ausdrücke nötig ist, 
aber manches geht eben doch (ich habe . und * und \> ausprobiert), da 
sollten Sachen, die nicht funktionieren, wenigsten zurückgewiesen 
werden. Aber ob das jemand für wichtig genug hält, das für die 
Basic-IDE zu ändern?


Gruß

Gerhard

Am 13.01.2019 um 21:29 schrieb Jürgen Klatt:

Hallo,

„Suchen und Ersetzen“ per folgender RegEx-Syntax in markiertem Text 
funktioniert in Writer einwandfrei.
Wenn ich dieselbe Syntax in der BasicIDE anwende, dann wird die RegEx 
Syntax (ersetze) nicht richtig ausgeführt.

Gesucht wird der Anfang einer jeden markierten Zeilen mittles (.*)
Der markierte Text soll beim Ersetzen erhalten bleiben ($1)
Daraus ergibt sich wie folgt:
Suche: (.*)
Ersetze: MeinText $1
"MeinText " soll also an den Anfang einer jeden markierten Zeile 
hinzugefügt werden.


Ergebnis Writer:

markierter Text = Mustertext
ersetzter Text = MeinText Mustertext

Ergebnis BasicIDE:
markierter Text = Mustertext
ersetzter Text = MeinText $1

Ist dies ein Bug in der BasicIDE?








--
Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy


Re: [de-users] Fehler? per RegEx „Suchen und Ersetzen“ in BasicIDE

2019-01-13 Diskussionsfäden Gerhard Weydt

Hallo Jürgen,

da kommen zwei Probleme zusammen:
1. reagiert die Basic-IDE auf .* anders: es wird bei "Nächsten suchen" 
der Teilstring ab der Cursorposition markiert, beim nächsten Klick auf 
die gleiche Schaltfläche gar nichts, beim nächsten dann der Teilstring 
ab dem zweiten Zeichen, dann wieder nichts usw. Ich nehme an, dass die 
Kombination ".*", auch wenn sie wie die Kombination zweier elementarer 
regulärer Ausdrücke aussieht, extra behandelt werden muss, was wohl 
nicht richtig geschieht.
2. wird die Logik mit der Klammer und der Bezug darauf mit $ nicht 
berücksichtigt, das passiert genausowenig z.B. bei einer Suche "(ab)" 
und Ersetze durch  "blabla $1".
Richtig ist das sicher nicht. Man kann zwar darüber streiten, wie weit 
in der Basic-IDE die Unterstützung der regulären Ausdrücke nötig ist, 
aber manches geht eben doch (ich habe . und * und \> ausprobiert), da 
sollten Sachen, die nicht funktionieren, wenigsten zurückgewiesen 
werden. Aber ob das jemand für wichtig genug hält, das für die Basic-IDE 
zu ändern?


Gruß

Gerhard

Am 13.01.2019 um 21:29 schrieb Jürgen Klatt:

Hallo,

„Suchen und Ersetzen“ per folgender RegEx-Syntax in markiertem Text 
funktioniert in Writer einwandfrei.
Wenn ich dieselbe Syntax in der BasicIDE anwende, dann wird die RegEx 
Syntax (ersetze) nicht richtig ausgeführt.

Gesucht wird der Anfang einer jeden markierten Zeilen mittles (.*)
Der markierte Text soll beim Ersetzen erhalten bleiben ($1)
Daraus ergibt sich wie folgt:
Suche: (.*)
Ersetze: MeinText $1
"MeinText " soll also an den Anfang einer jeden markierten Zeile 
hinzugefügt werden.


Ergebnis Writer:

markierter Text = Mustertext
ersetzter Text = MeinText Mustertext

Ergebnis BasicIDE:
markierter Text = Mustertext
ersetzter Text = MeinText $1

Ist dies ein Bug in der BasicIDE?






--
Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy