Reguläre Ausdrücke

classic Classic list List threaded Threaded
13 messages Options
Karl Zeiler Karl Zeiler
Reply | Threaded
Open this post in threaded view
|

Reguläre Ausdrücke

Hallo,

in einem Writer-Dokument ist eine lange Wortliste für ein Wörterbuch
enthalten mit folgender Struktur:
blablabla/abc gefolgt von einem Absatzumbruch.

Ich will nun z.B. alle Wörter, die den Buchstaben v enthalten, suchen
und markieren lassen, um sie anschließend mit dem Kopierbefehl in eine
neue Datei einfügen zu können. Dazu gebe ich im "Suchfeld" (reguläre
Ausdrücke) folgendes ein:
(.*)v(.*)
Damit finde ich zwar alle gewünschten Wörter (so sieht es jedenfalls
aus), kann die markierten Wörter kopieren und in ein neues Dokument
einfügen - aber es fehlt der zugehörige Absatzumbruch.

Wie kann ich den *Absatzumbruch* mit einbeziehen?

Gruß
Karl


--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Bernhard Plagemann Bernhard Plagemann
Reply | Threaded
Open this post in threaded view
|

Re: Reguläre Ausdrücke

Teste bitte: <STRG>t - wird eingegeben mit ^t-

Viel Erfolg!

Bernhard Plagemann
Berufskolleg Opladen
Fachbereich Technik
Stauffenbergstr. 21-23
51379 Leverkusen
[hidden email]
http://www.bk-opladen.de
http://www.mechatroniker-leverkusen.de
http://www.bernhard-plagemann.de

Am 22.06.2011 12:39, schrieb Karl Zeiler:

> Hallo,
>
> in einem Writer-Dokument ist eine lange Wortliste für ein Wörterbuch
> enthalten mit folgender Struktur:
> blablabla/abc gefolgt von einem Absatzumbruch.
>
> Ich will nun z.B. alle Wörter, die den Buchstaben v enthalten, suchen
> und markieren lassen, um sie anschließend mit dem Kopierbefehl in eine
> neue Datei einfügen zu können. Dazu gebe ich im "Suchfeld" (reguläre
> Ausdrücke) folgendes ein:
> (.*)v(.*)
> Damit finde ich zwar alle gewünschten Wörter (so sieht es jedenfalls
> aus), kann die markierten Wörter kopieren und in ein neues Dokument
> einfügen - aber es fehlt der zugehörige Absatzumbruch.
>
> Wie kann ich den *Absatzumbruch* mit einbeziehen?
>
> Gruß
> Karl
>

--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Edgar Kuchelmeister-2 Edgar Kuchelmeister-2
Reply | Threaded
Open this post in threaded view
|

Re: [de-users] Reguläre Ausdrücke

Hallo Bernhard,

----- Original Message ---------------

Subject: Re: [de-users] Reguläre Ausdrücke
   From: Bernhard Plagemann <[hidden email]>
   Date: Wed, 22 Jun 2011 13:15:04 +0200
     To: [hidden email]

>Teste bitte: <STRG>t - wird eingegeben mit ^t-

der Mailbetreff heißt _Reguläre Ausdrücke_!

STRG-T ist kein regulärer Ausdruck ;-)

Gruß
Edgar

--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Andreas Heinlein Andreas Heinlein
Reply | Threaded
Open this post in threaded view
|

Re: Reguläre Ausdrücke

In reply to this post by Karl Zeiler
Am 22.06.2011 12:39, schrieb Karl Zeiler:

> Hallo,
>
> in einem Writer-Dokument ist eine lange Wortliste für ein Wörterbuch
> enthalten mit folgender Struktur:
> blablabla/abc gefolgt von einem Absatzumbruch.
>
> Ich will nun z.B. alle Wörter, die den Buchstaben v enthalten, suchen
> und markieren lassen, um sie anschließend mit dem Kopierbefehl in eine
> neue Datei einfügen zu können. Dazu gebe ich im "Suchfeld" (reguläre
> Ausdrücke) folgendes ein:
> (.*)v(.*)
> Damit finde ich zwar alle gewünschten Wörter (so sieht es jedenfalls
> aus), kann die markierten Wörter kopieren und in ein neues Dokument
> einfügen - aber es fehlt der zugehörige Absatzumbruch.
>
> Wie kann ich den *Absatzumbruch* mit einbeziehen?
>
> Gruß
> Karl
>

Ich hatte mal einen Ausdruck zum entfernen überflüssiger Zeilenumbrüche
rausgesucht, da war der Zeilenumbruch glaube ich "$" am Ende. Versuchs mal.

andreas

--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Werner Tietz Werner Tietz
Reply | Threaded
Open this post in threaded view
|

Re: Reguläre Ausdrücke

In reply to this post by Karl Zeiler
Hallo Karl
Am 22.06.2011 12:39, schrieb Karl Zeiler:

> Hallo,
>
> in einem Writer-Dokument ist eine lange Wortliste für ein Wörterbuch
> enthalten mit folgender Struktur:
> blablabla/abc gefolgt von einem Absatzumbruch.
>
> Ich will nun z.B. alle Wörter, die den Buchstaben v enthalten, suchen
> und markieren lassen, um sie anschließend mit dem Kopierbefehl in eine
> neue Datei einfügen zu können. Dazu gebe ich im "Suchfeld" (reguläre
> Ausdrücke) folgendes ein:
> (.*)v(.*)
> Damit finde ich zwar alle gewünschten Wörter (so sieht es jedenfalls
> aus), kann die markierten Wörter kopieren und in ein neues Dokument
> einfügen - aber es fehlt der zugehörige Absatzumbruch.
>
> Wie kann ich den *Absatzumbruch* mit einbeziehen?

Füge erstmal im Quelldokument ein sonst nicht benutztes Zeichen direkt
vor dem Absatzumbruch ein, z.B. ein #
Suche nach $ ersetze durch #\n

Jetzt kannst du deine Wörter mit v suchen, kopieren, im anderen Dokument
einfügen und dort nochmal suchen nach: # ersetzen durch: \n

Gruß Werner



--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Achim Pabel Achim Pabel
Reply | Threaded
Open this post in threaded view
|

Re: Reguläre Ausdrücke

Magst Du hier auch mal schauen?

http://wiki.services.openoffice.org/wiki/Documentation/How_Tos/Regular_Expressions_in_Writer

http://www.regexe.de/

Gruß Achim

--------------------------------


Am Mittwoch, 22. Juni 2011, 15:18:16 schrieb Werner Tietz:

> Hallo Karl
> Am 22.06.2011 12:39, schrieb Karl Zeiler:
> > Hallo,
> >
> > in einem Writer-Dokument ist eine lange Wortliste für ein Wörterbuch
> > enthalten mit folgender Struktur:
> > blablabla/abc gefolgt von einem Absatzumbruch.
> >
> > Ich will nun z.B. alle Wörter, die den Buchstaben v enthalten, suchen
> > und markieren lassen, um sie anschließend mit dem Kopierbefehl in eine
> > neue Datei einfügen zu können. Dazu gebe ich im "Suchfeld" (reguläre
> > Ausdrücke) folgendes ein:
> > (.*)v(.*)
> > Damit finde ich zwar alle gewünschten Wörter (so sieht es jedenfalls
> > aus), kann die markierten Wörter kopieren und in ein neues Dokument
> > einfügen - aber es fehlt der zugehörige Absatzumbruch.
> >
> > Wie kann ich den *Absatzumbruch* mit einbeziehen?
>
> Füge erstmal im Quelldokument ein sonst nicht benutztes Zeichen direkt
> vor dem Absatzumbruch ein, z.B. ein #
> Suche nach $ ersetze durch #\n
>
> Jetzt kannst du deine Wörter mit v suchen, kopieren, im anderen Dokument
> einfügen und dort nochmal suchen nach: # ersetzen durch: \n
>
> Gruß Werner
>
>
>
>


--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Bernhard Plagemann Bernhard Plagemann
Reply | Threaded
Open this post in threaded view
|

Re: [de-users] Reguläre Ausdrücke

In reply to this post by Edgar Kuchelmeister-2
Guten Tag,
ist denn ein Zeilenumbruch ein "regulärer" Ausdruck?

Mit freundlichen Grüßen

Bernhard Plagemann
Berufskolleg Opladen
Fachbereich Technik
Stauffenbergstr. 21-23
51379 Leverkusen
[hidden email]
http://www.bk-opladen.de
http://www.mechatroniker-leverkusen.de
http://www.bernhard-plagemann.de

Am 22.06.2011 13:18, schrieb Edgar Kuchelmeister:

> Hallo Bernhard,
>
> ----- Original Message ---------------
>
> Subject: Re: [de-users] Reguläre Ausdrücke
>     From: Bernhard Plagemann<[hidden email]>
>     Date: Wed, 22 Jun 2011 13:15:04 +0200
>       To: [hidden email]
>
>> Teste bitte:<STRG>t - wird eingegeben mit ^t-
>
> der Mailbetreff heißt _Reguläre Ausdrücke_!
>
> STRG-T ist kein regulärer Ausdruck ;-)
>
> Gruß
> Edgar
>

--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Achim Pabel Achim Pabel
Reply | Threaded
Open this post in threaded view
|

Re: [de-users] Reguläre Ausdrücke

> ist denn ein Zeilenumbruch ein "regulärer" Ausdruck?
Jaein. Zeilenende ist kein Regulärer Ausdruck - aber Du kannst bis einschließlich dem Zeilenumbruch ( \n oder \n\r ) suchen lassen.

Das $ Zeichen prüft bis "einschließlich" das Ende eines Strings.
Beispiele für Zeilenende:
        * In der Textverarbeit je nach BS mit   \n   oder   \n\r   endet,
        * In der Programmierung endet der String mit   \0
Zwar bin ich kein Tiefseeprogrammierer, aber ich vermute einmal das alle String mit \0 enden - zumindestens war das in C so.
Vielleicht kann dazu noch jemand anders eine bessere Stellungnahmen abgeben.

Aber um   \0   geht es bei Deiner Anfrage nicht. Bei regexe sollen ja die Vereinfachungen bei der Suche nach dem String im Vordergrund stehen.
Und dann bedeutet das Metazeichen   $   einschließlich Zeilenumbruch-Zeichen.

Gruß Achim

----------------------

Am Mittwoch, 22. Juni 2011, 17:28:35 schrieb Bernhard Plagemann:

> Guten Tag,
> ist denn ein Zeilenumbruch ein "regulärer" Ausdruck?
>
> Mit freundlichen Grüßen
>
> Bernhard Plagemann
> Berufskolleg Opladen
> Fachbereich Technik
> Stauffenbergstr. 21-23
> 51379 Leverkusen
> [hidden email]
> http://www.bk-opladen.de
> http://www.mechatroniker-leverkusen.de
> http://www.bernhard-plagemann.de
>
> Am 22.06.2011 13:18, schrieb Edgar Kuchelmeister:
> > Hallo Bernhard,
> >
> > ----- Original Message ---------------
> >
> > Subject: Re: [de-users] Reguläre Ausdrücke
> >     From: Bernhard Plagemann<[hidden email]>
> >     Date: Wed, 22 Jun 2011 13:15:04 +0200
> >       To: [hidden email]
> >
> >> Teste bitte:<STRG>t - wird eingegeben mit ^t-
> >
> > der Mailbetreff heißt _Reguläre Ausdrücke_!
> >
> > STRG-T ist kein regulärer Ausdruck ;-)
> >
> > Gruß
> > Edgar
> >
>
>


--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Uwe Haas Uwe Haas
Reply | Threaded
Open this post in threaded view
|

Re: [de-users] Reguläre Ausdrücke

Am 22.06.2011 18:09, schrieb Achim Pabel:
> [...]
> Zwar bin ich kein Tiefseeprogrammierer, aber ich vermute einmal das alle String mit \0 enden - zumindestens war das in C so.
Bis auf ganz wenige Ausnahmen stimmt diese Aussage.  Diese Ausnahmen
sind z. B. BASIC- und PASCAL-Programme, wobei auch hier schon lange die
"Null-terminierten Strings" Einzug gehalten haben. Aus diesem Grund
haben viele Programme mit der Verarbeitung von Strings, die das Zeichen
#00 enthalten, Probleme. Auch viele Sicherheitslücken resultieren aus
Tricks mit diesem Zeichen.

> Vielleicht kann dazu noch jemand anders eine bessere Stellungnahmen abgeben.
>
> Aber um   \0   geht es bei Deiner Anfrage nicht. Bei regexe sollen ja die Vereinfachungen bei der Suche nach dem String im Vordergrund stehen.
> Und dann bedeutet das Metazeichen   $   einschließlich Zeilenumbruch-Zeichen.


--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Achim Pabel Achim Pabel
Reply | Threaded
Open this post in threaded view
|

Re: [de-users] Reguläre Ausdrücke

Wäre es nicht besser wenn Du "nach erfolgreicher Suche" jedem Treffer ein   \n   oder   \n\r   beim Eintragen einfach hinten mit anhängst?
Nur weis ich nicht ob das in OO / LO geht. Das musst Du ergoogeln / recherchieren und ausprobieren... :-(


@Uwe, Danke für die gute Info!  "Irgendwas" war bei mir noch so was in Erinnerung...

Am Mittwoch, 22. Juni 2011, 18:22:56 schrieb Uwe Haas:

> Am 22.06.2011 18:09, schrieb Achim Pabel:
> > [...]
> > Zwar bin ich kein Tiefseeprogrammierer, aber ich vermute einmal das alle String mit \0 enden - zumindestens war das in C so.
> Bis auf ganz wenige Ausnahmen stimmt diese Aussage.  Diese Ausnahmen
> sind z. B. BASIC- und PASCAL-Programme, wobei auch hier schon lange die
> "Null-terminierten Strings" Einzug gehalten haben. Aus diesem Grund
> haben viele Programme mit der Verarbeitung von Strings, die das Zeichen
> #00 enthalten, Probleme. Auch viele Sicherheitslücken resultieren aus
> Tricks mit diesem Zeichen.
>
> > Vielleicht kann dazu noch jemand anders eine bessere Stellungnahmen abgeben.
> >
> > Aber um   \0   geht es bei Deiner Anfrage nicht. Bei regexe sollen ja die Vereinfachungen bei der Suche nach dem String im Vordergrund stehen.
> > Und dann bedeutet das Metazeichen   $   einschließlich Zeilenumbruch-Zeichen.
>
>
>


--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Uwe Haas Uwe Haas
Reply | Threaded
Open this post in threaded view
|

Re: [de-users] Reguläre Ausdrücke

Am 22.06.2011 19:50, schrieb Achim Pabel:
> Wäre es nicht besser wenn Du "nach erfolgreicher Suche" jedem Treffer ein   \n   oder   \n\r   beim Eintragen einfach hinten mit anhängst?
> Nur weis ich nicht ob das in OO / LO geht. Das musst Du ergoogeln / recherchieren und ausprobieren... :-(
>
>
> @Uwe, Danke für die gute Info!  "Irgendwas" war bei mir noch so was in Erinnerung...
Für irgend was muß doch ein Informatikstudium gut sein :-D

> Am Mittwoch, 22. Juni 2011, 18:22:56 schrieb Uwe Haas:
>> Am 22.06.2011 18:09, schrieb Achim Pabel:
>>> [...]
>>> Zwar bin ich kein Tiefseeprogrammierer, aber ich vermute einmal das alle String mit \0 enden - zumindestens war das in C so.
>> Bis auf ganz wenige Ausnahmen stimmt diese Aussage.  Diese Ausnahmen
>> sind z. B. BASIC- und PASCAL-Programme, wobei auch hier schon lange die
>> "Null-terminierten Strings" Einzug gehalten haben. Aus diesem Grund
>> haben viele Programme mit der Verarbeitung von Strings, die das Zeichen
>> #00 enthalten, Probleme. Auch viele Sicherheitslücken resultieren aus
>> Tricks mit diesem Zeichen.
>>
>>> Vielleicht kann dazu noch jemand anders eine bessere Stellungnahmen abgeben.
>>>
>>> Aber um   \0   geht es bei Deiner Anfrage nicht. Bei regexe sollen ja die Vereinfachungen bei der Suche nach dem String im Vordergrund stehen.
>>> Und dann bedeutet das Metazeichen   $   einschließlich Zeilenumbruch-Zeichen.


--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Karl Zeiler Karl Zeiler
Reply | Threaded
Open this post in threaded view
|

Re: Reguläre Ausdrücke

In reply to this post by Werner Tietz
Hallo Werner und alle anderen Helfer,

Werner Tietz schrieb:

> Hallo Karl
> Am 22.06.2011 12:39, schrieb Karl Zeiler:
>> Hallo,
>>
>> in einem Writer-Dokument ist eine lange Wortliste für ein Wörterbuch
>> enthalten mit folgender Struktur:
>> blablabla/abc gefolgt von einem Absatzumbruch.
>>
>> Ich will nun z.B. alle Wörter, die den Buchstaben v enthalten, suchen
>> und markieren lassen, um sie anschließend mit dem Kopierbefehl in
>> eine neue Datei einfügen zu können. Dazu gebe ich im "Suchfeld"
>> (reguläre Ausdrücke) folgendes ein:
>> (.*)v(.*)
>> Damit finde ich zwar alle gewünschten Wörter (so sieht es jedenfalls
>> aus), kann die markierten Wörter kopieren und in ein neues Dokument
>> einfügen - aber es fehlt der zugehörige Absatzumbruch.
>>
>> Wie kann ich den *Absatzumbruch* mit einbeziehen?
>
> Füge erstmal im Quelldokument ein sonst nicht benutztes Zeichen direkt
> vor dem Absatzumbruch ein, z.B. ein #
> Suche nach $ ersetze durch #\n
>
> Jetzt kannst du deine Wörter mit v suchen, kopieren, im anderen
> Dokument einfügen und dort nochmal suchen nach: # ersetzen durch: \n

ja, mit diesem Umweg funktioniert es.
Ich habe es heute Morgen auch schon mit (.*)v(.*)$ versucht, nach dem
Kopieren waren aber die Absatzumbrüche ebenfalls weg.

Vielen Dank Dir und allen anderen Helfern für die Unterstützung.

Gruß
Karl


--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Christian Lohmaier (klammer) Christian Lohmaier (klammer)
Reply | Threaded
Open this post in threaded view
|

Re: [de-users] Re: [de-users] Reguläre Ausdrücke

In reply to this post by Bernhard Plagemann
Hi *,

2011/6/22 Bernhard Plagemann <[hidden email]>:
> Guten Tag,
> ist denn ein Zeilenumbruch ein "regulärer" Ausdruck?

Es gibt einen Unterschied zwischen "Positionseinschränkungen" und
"Zeichenplatzhaltern"

Und abgesehen davon, was man als regulären Ausdruck bezeichnet: LO
unterstützt nicht alle möglichen Ausdrücke, wie man sie z.B. von Perl
kennt.
Was dort in einem Rutsch geht, muß man (wie hier beschrieben) auch mal
in zwei seperaten Schritten erledigen.

ciao
Christian

--
Informationen zum Abmelden: E-Mail an [hidden email]
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert