split.s: regex und "&"

Beitrag lesen

Ich habe ein problem mit dem &-Zeichen bei einem Regex:

$text =~ s{[($_)=([a-zA-Z_0-9/:.-#=?&]+)](.+?)[/$_] } { ... }

Das ganze soll mal ein BBCode-Parser werden.

Nun ist folgendes: Der regex ergibt FALSE, wenn innerhalb der ersten [] ein & vorkommt:

Beispiel:

[url=htp://www.test.de/?id=2&sub=3]blabla[/url]

Wo ist mein Denkfehler?

Ansonsten funktionierts! (!)