Seite 1 von 1
Nach Sonderzeichen suchen
Verfasst: Mittwoch 20. Oktober 2010, 12:56
von goldenflash
Hallo,
Ich suche in einem Text nach dem bestimmten Zeichenfolgen. Eigentlich klappt das auch ganz gut mit:
node_pos = str("Node")
muster = re.compile(node_pos)
treffer = muster.search(inhalt)
allerdings möchte ich eigentlich nicht nach "Node" sondern nach "*Node" suchen. "*" ist leider das Zeichen für Widerholung und ich bekomme immer eine Fehlermeldung!
Wie könnte ich da drangehen?
Danke schonmal^^
Re: Nach Sonderzeichen suchen
Verfasst: Mittwoch 20. Oktober 2010, 13:21
von Hyperion
Das ist ziemlich schräg:
erstere Zeile ließe ich doch auch so schreiben:
Zudem ist der Name irreführend; "pos" erinnert an "Position"; das ist aber keine Positionsangabe...
Es reicht doch
Hast Du Dir mal das re-Modul angeguckt? Da ist sogar noch zu einer guten Einführung verlinkt. Damit solltest Du schnell finden, wie man das "*" richtig einsetzt (Tipp: * steht für beliebig viele Wiederholungen von dem Ausdruck davor...)
Außerdem nutze in Zulunft bitte die Python-Code-Tags; dadurch gehen evtl. Einrückungen nicht verloren und das ganze sieht hübsch bunt aus

Re: Nach Sonderzeichen suchen
Verfasst: Mittwoch 20. Oktober 2010, 14:50
von BlackJack
@goldenflash: Du musst den Stern durch einen '\' maskieren, damit er für den regulären Ausdruck seine besondere Bedeutung verliert: ``pattern = re.compile(r'\*Node')``
Re: Nach Sonderzeichen suchen
Verfasst: Mittwoch 20. Oktober 2010, 15:09
von Hyperion
BlackJack hat geschrieben:@goldenflash: Du musst den Stern durch einen '\' maskieren, damit er für den regulären Ausdruck seine besondere Bedeutung verliert: ``pattern = re.compile(r'\*Node')``
Ach mensch, das hab ich wohl falsch verstanden...
Re: Nach Sonderzeichen suchen
Verfasst: Samstag 30. Oktober 2010, 10:08
von goldenflash
BlackJack hat geschrieben:@goldenflash: Du musst den Stern durch einen '\' maskieren, damit er für den regulären Ausdruck seine besondere Bedeutung verliert: ``pattern = re.compile(r'\*Node')``
Hab ganz vergessen mich zu bedanken!
Danke!

Re: Nach Sonderzeichen suchen
Verfasst: Samstag 30. Oktober 2010, 15:16
von sma
Will man aus einem Literal einen regulären Ausdruck machen, hilft "re.escape()".
Stefan