[Python-de] RegEx Problem

"Sebastian \"Marduk\" Pölsterl" marduk at k-d-w.org
Don Jan 6 14:59:57 CET 2005


Hi!

Ich bin gerade dabei einen kleinen BBCode Parser zu basteln. Ich brauche
nur Tags in der Form [<tag>]<text>[/<tag>]. Mein Problem tritt auf, wenn
zwei Tags ineinander verschaltet sind: [b][u]Fetter, unterstrichener
Text[/u][/b]. Mit folgender Funktion erhalte ich aber dann
('b','[u]Fetter, unterstrichener Text','u'). Ich habe auch schon
versucht als zweite Gruppe alles außer [ und ] zu erlauben, hat aber
nicht geklappt.

def parse_bbcode(self, text):
    print text
    pattern = re.compile('\[(.+?)\](.+?)\[/(.+?)\]')
    matches = pattern.findall(text)
    for bit in matches:
        print bit
        self.bbcodes.append((bit[0], bit[1]))
        if (pattern.search(bit[1])):
            self.parse_bbcode(bit[1])

Gruß
Sebastian Pölsterl


-- 
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.6.8 - Release Date: 03.01.2005