EnTeQuAk hat geschrieben:
achja deine headline regex bekommt kleine Probleme mit sowas:
=== asd ====
der content-match wäre dann 'asd ='. Um das zu verhinder ist meine ja so komplex
Für mich ist das auch richtig. Denn... willst du das letzte '=' als weiteres '<h1>' ansehen?
Wenn ja, spielst du dem Benutzer eventuell einen starken Streich
Oder verstehe ich dich jetzt falsch?
Nein, das sehe ich durch meine Regex nicht als solches an, es wird einfach nicht als Heading erkannt, sondern nur als === asd ==== ausgegeben.
Wobei es wahrscheinlich etwas zu viel des guten ist, aber dieses Problem hat mir sehr geholfen Regex besser zu verstehn
EnTeQuAk hat geschrieben:
btw: schau dir ma die Beispiele von Tekisuto an... liegen auch im Trunk
da hast du wunderbare Beispiele, wie bestimmte Sachen gelößt werden können.
MfG EnTeQuAk
Ja die hab ich dafür verwendet, um die Arbeitsweise von Tekisuto zu verstehen
PmanX hat geschrieben:apollo13 hat geschrieben:Die folgende Regexp matcht alle Headlines von h1 bis h5 (wobei h1 = '=' und h5 = '=====').
...
match_obj = re.search(rawstr, matchstr, re.MULTILINE)
Soll sich die Headline über mehrer Zeilen erstrecken?
re.MULTILINE überdenken.
MULTILINE ist in diesem Fall nur für kodos, damit ich einen searchstring mit mehreren Zeilen testen kann.
Siehe
http://docs.python.org/lib/node46.html eben damit die Regexp über alle Zeilen läuft und ich Zeile für Zeile auf ein richtiges/falsches heading testen kann, sonst müsste ich immer die erste Zeile abändern und wenn ich in der Regex was falsch mache weiß ich nimmer ob das erste (gelöschte) noch existiert.
PmanX hat geschrieben:
Code: Alles auswählen
(?P<inhalt>(?!=).+(?<!=))
# wuerde ich so schreiben
(?<inhalt>[^=]+)
Nö dann dürfte in der Überschrift kein = Zeichen stehn, ob sich so aufwendig lohnt oder nicht, siehe weiter oben...
MfG apollo13