Hi!
Ich baue ein Syntaxhighlightning script, das C++ QUellcode einfärben soll.
Ich führe also eine ganze Menge preg_replace() auf den Code aus.
Allerdings sind ja dann die <span style=""></span>, mit denen ich den Code einfärbe mit enthalten. So passiert es manchmal, dass preg_replace() bestimmte sachen im <span tag einfärben will. Dann Schreibt er natürlich ein <span> in das alte hinein und das haut alles nicht mehr hin un man siht die Hälfte vom alten Spawn.
Wenn ich jetzt z.B. alle farben rot färben wollte hab ich das halt als erstes replace genommen.
Denn es würde ja auch <span um rgb-Farbcodes aus anderen <spans machen.
Jetzt bin ich allerdings an einem Punkt angekommen, wo da smit der richtigen Reihenfolge nicht mehr hinhaut. Ich brauch also in meinen Suchstrings etwas, dass die <span tags ausschließt.
Ich hab shcon diverese Versuche unternommen von denen manche usinnig waren, aber versuchen kann amns ja
Keins funktioniert... Habt ihr eine funktionierende Variante oder vielleicht eine ganz andere Möglichkeit?
mfg okoman
Ich baue ein Syntaxhighlightning script, das C++ QUellcode einfärben soll.
Ich führe also eine ganze Menge preg_replace() auf den Code aus.
Allerdings sind ja dann die <span style=""></span>, mit denen ich den Code einfärbe mit enthalten. So passiert es manchmal, dass preg_replace() bestimmte sachen im <span tag einfärben will. Dann Schreibt er natürlich ein <span> in das alte hinein und das haut alles nicht mehr hin un man siht die Hälfte vom alten Spawn.
Wenn ich jetzt z.B. alle farben rot färben wollte hab ich das halt als erstes replace genommen.
Denn es würde ja auch <span um rgb-Farbcodes aus anderen <spans machen.
Jetzt bin ich allerdings an einem Punkt angekommen, wo da smit der richtigen Reihenfolge nicht mehr hinhaut. Ich brauch also in meinen Suchstrings etwas, dass die <span tags ausschließt.
Ich hab shcon diverese Versuche unternommen von denen manche usinnig waren, aber versuchen kann amns ja
Code:
#(?<!\<span style=\"color:rgb\(([0-9\,]){1,})([0-9]{1,})(?!\)\"\>)#isU #(?:!\<span)(?:.*)([0-9]{1,})(?:.*)(?:!\</span\>)#isU
mfg okoman
Kommentar