[Python-de] Noch mal RegEx :-((
Jan Voges
jan.voges at gmx.de
Die Jul 1 23:15:46 EDT 2003
Hallo!
On 1 Jul 2003 at 20:36, Albert Hermeling wrote:
> test=sre.compile(r'[-]??\d+[,]??\d*')
>
> Das so habe ich gedacht muss das gewuenschte finden. Leider zu frueh gefreut
> :-(( es funktioniert nicht perfekt.
>
> test.match("124k")
> liefert ein Treffer nicht gewuenscht.
>
> Wo ist den bloss der Denkfehler???
Am Ende fehlt noch ein $ (die Verankerung am String-Ende), damit klar
ist, dass hinter dem \d* nichts mehr kommen darf.
Die eckigen Klammern sind übrigens unnötig, weil eine Zeichengruppe
mit einem Zeichen das Zeichen selbst ist. Dein RegExp erkennt
übrigens
auch Zahlen, die mit einem Komma enden, was vielleicht nicht
gewollt ist. Ich würd' sowieso vorschlagen, ganze Zahlen '\d+' und
Kommazahlen '\d+,\d+' getrennt zu machten. Ist IMO etwas lesbarer.
test=sre.compile(r'-?(\d+|\d+,\d+)$')
Jan