2017-05-25 4 views
-2

Ich versuche, eine bis zu 4-stellige Nummer aus der Zeichenfolge zu extrahieren (die 111):Python regulären exp wont Spiel

<td align=right><font color=yellow>Meldung:<td align=left><font color=yellow>111</tr></table><p><table border width=90% cellpadding=3 bordercolor=darkgray><caption valign=top align=left>Aktuelle Messdaten bei Eintritt der St&ouml;rung</caption> 

die Zeichenfolge ist alles, sollte die Regex mit arbeiten, da das Dokument bekam aufgeteilt in Zeilen

meine regex ist ^r"<.*?><.*?>.*?<.*?><.*?yellow>" für den Beginn der Zahl zu finden. Wenn ich es in regex101.com versuchen, es funktioniert, aber wenn ich es in Python verwenden, erhalte ich keine Übereinstimmung:

numberBegin = re.search(r"^<.*?><.*?>.*?<.*?><.*?yellow>", tableRow).end(0) + 1 

Dank für Ihre Hilfe

+5

Tp Parsing HTML, beachten Sie bitte ein HTML-Parser verwenden. zeige –

+0

ein gültiges HTML-Markup-Fragment mit Top-Eltern-Tag – RomanPerekhrest

+1

Dank, ich werde prüfen, aber es doenst erklären, warum es nicht – KuSpa

Antwort

0

Der Fehler war, dass .*? nicht \r\n nicht übereinstimmt, die war irgendwie in der string aber nicht von meiner IDE gezeigt. Ich entfernte die \r\n und es funktioniert.