[Python-de] Regulaere Ausdruecke in Python

Albert Hermeling Albert.Hermeling at t-online.de
Thu Oct 4 19:04:19 EDT 2001


Am Donnerstag, 4. Oktober 2001 16:37 schrieb Gerhard Häring:
> On Thu, Oct 04, 2001 at 02:44:23PM +0200, Albert Hermeling wrote:

Hallo,
> >
> > ich habe in Python 2.1 ein Problem mit Regulären Ausdrücken.
>
> Ich bin da leider auch << 100% kompetent. Ich kann dir aber das
> Python-RegEx HOWTO unter http://py-howto.sf.net/ ans Herz legen. Das
> konsultiere ich, wenn ich wieder mal alles zu RegEx vergessen habe.
Danke für den Tipp werde ich mir heute Abend mal ziehen.

>
> > Ich muss ein String nach ". ! ?" durchsuchen. Für diese Aufgabe
> > verwende ich das Modul sre mit der Funktion match.

> > Beispiel:
> >
> > lieste=['Wie bitte?', 'Ein Satz.', 'Ein Schrei!', 'Noch ein Schrei!!',
> > 'Kein Punkt', '?','Das sind Zahlen 1 4 5 7."]
>
> Mir ist nicht ganz klar, was du machen willst ...
Hm!! Warum einfach wenn´s auch umständlich geht. Um es mal frei heraus zu 
sagen ich möchte in einer Textdatei die Anzahl der Sätze bestimmen. (Das 
Skript dient nur der Übung). Ein Satz ist ein Satz wenn am Ende ein >.<, oder 
ein >?<, oder ein >!< auftaucht. 

Das ist die Aufgabe die ich mir gestellt habe. Dummerweise ist der Ansatz mit 
match falsch den es können ja auch mehrere Sätze pro String vorhanden sein. 
Match liefert ja nur, ja oder nein (bzw. teilt es in Gruppen auf) und nicht 
die Anzahl oder liege ich da schon wieder falsch? 

> Vielleicht kommt das in die Richtung, in die du willst:
> >>> print re.match("([A-Za-z0-9\ ]*)([\.\!\?\(]*)", "Text bla
> >>> 4711!?").groups()
Nein leider nicht das liefert mir ja nur Gruppen und ich brauche eine Zahl. 
Aber trotzdem Danke für das Beispiel. Davon kann, bzw. habe ich ne ganze 
Menge gelernt.

Ich denke das die heutige Nacht woll lang wird ich habe da so eine Idee mit 
count... Wenn jemand interesse an der Lösung hat kann er ja mal Fragen.

mfg

Albert



More information about the Python-de mailing list