RegEx / preg_replace

Hallo zusammen

ich möchte nun also sowas wie 'n Syntaxhilighting mit PHP basteln. Leider krieg ich das mit den Strings nicht so ganz hin. Bzw. funktioniert es einwandfrei, solange nur ein String drin vorkommt :p

preg_replace("/\"(.*)\"/si", "<span class=\"green\">\"$1\"</span>", $input);

Und ich weis auch woran das liegt ^^
Mit dem RegEx oben wird ja eig. das erste und das letzte " ausfindig gemacht und mach das „syntaxhilightinh“ drumrum.

Ich brauch aber jeweils von " bis zum nächsten ". Und die " sollten überlesen werden. Das hatte ich soweit auch mal, jetzt tuts aber i-wie nicht mehr :smiley:

preg_replace("/\"(.*|\\\"?)\"/si", "<span class=\"green\">\"$1\"</span>", $input);

Wie kann ich nun also machen, dass alle Zeichen ausser nem " akteptiert werden? Ich habs schon einige male versucht, leider ohne erfolg.

Freundliche Grüsse
Joey

at2.php.net/manual/en/function.token-get-all.php -> T_CONSTANT_ENCAPSED_STRING

Hey :slight_smile:
Danke vilmals, dank dir bin ich auf highlight_string() gestossen, was natürlich viel einfacher ist, als das ganze selbst zu basteln :smiley:

Freundliche Grüsse
Joey

-.-’