2017-04-19 7 views
-2

Ich versuche, die Position einer Teilzeichenfolge in einem HTML zu erhalten. Der schwierige Teil ist, dass der HTML-Code in der Teilzeichenfolge enthalten sein kann.Regex, um die Zeichenfolge in HTML zu entsprechen

Beispiel: Wenn ich 2nd, aber in der html übereinstimmen möchte, ist es wie folgt codiert 2<span class="super">nd</span>.

Hinweis: Es kann jeden Teil sein, nicht nur „1“, „2“, ...

Wie kann eine Anfrage hat, das jede Art von Inline HTML balise Vorstellungen?

+0

Sie mithalten können für eine Regex aussehen, aber nehmen nur Teile davon, mit [einfangende Gruppen] (http://www.regular-expressions.info/brackets.html). – schroedingersKat

Antwort

0

fand ich eine einfache Lösung:

sub = r'\b' + '(<span[^>]*>)?'.join(list(substring)) + r'\b'

So: 2nd in \b2(<span[^>]*>)?n(<span[^>]*>)?d\b

umgewandelt wird, die 2nd und 2<span class="super">nd</span>

Verwandte Themen