Ich bin neu in regulären Ausdruck/Python, aber ich versuche, eine Revisionsnummer von einer HTML-Seite zu extrahieren. Ich benutzte einen Proxy und Urllib, um die gelesene Seite in einer Zeichenkette zu speichern. Ich habe einige Text, der wie folgt aussieht:Wie kann ich regulären Ausdruck/Python verwenden, um alle Ganzzahlen nach einer bekannten Zeichenfolge, einer unbekannten Zeichenfolge und einer anderen bekannten Zeichenfolge zu finden?
<p>Proxy 3.2.1 r72440<br>
SlotBios 11.00</p>
<p><strong><span style="color: rgb(255, 0, 0);">Random Text 4.23.6 r98543<br>
...</tr>...
<p><strong><span style="color: rgb(255, 0, 0);">Random Text 4.33.6 r98549<br>
Ich möchte den Text analysieren und extrahieren Sie die Versionsnummern entsprechend den Linien von rot. So in diesem Beispiel mag ich 98.543 analysieren und 98549.
Ich bin in der Lage, die Linien alle mit im Allgemeinen zu analysieren aus:
paragraphs = re.findall(r'r(\d*)<br>',str(html))
Allerdings bin ich ein wenig hängen, wie zu tun es so, dass ich nur die roten Linien finden kann. Mein aktueller Code würde auch 72440 enthalten. Irgendeine Idee, wie man das umgeht? Vielen Dank!
Haben die Revisionsnummern immer die gleiche Anzahl an Zeichen? Vielleicht solltest du stattdessen versuchen, die Schnur von hinten zu schneiden. – LordNeo
Die Regex-Engine ist farbenblind. Es kann nicht feststellen, welche Farbe Ihre Linien in einem Webbrowser wiedergeben würden. Gibt es einen anderen Hinweis, den Sie verwenden können, um die gesuchten Zahlen zu identifizieren? –
[Regex nicht verwenden, um HTML zu analysieren] (http://Stackoverflow.com/a/1732454/5323213) –