Kim Emax wrote:
> Anders K. Madsen wrote:
>
>
>>Går ikke, den bliver allerede hentet fra MySQL.. :)
>>Sagen er den at jeg gerne vil implementere automagisk
>>syntaks-highlight af php-kode i mit forum... Således at når folk
>>skriver et indlæg med kodeeksempler (og husker at starte med <?php og
>>slutte med ?>), så skulle den syntaks-highlighte det med phps
>>highlight_string().
>
>
> ahaaa... men du kan evt. selv tilføje phps start og sluttags?
Pointen er jo at den skulle gøre det automagisk, altså sådan at den bare
selv finder ud af hvor der er php-kode og så highlighter det...
Så man netop blev fri for [php][/php]-løsninger..
>>>>$regs[4] = "<?php\necho \'And goodbye cruel world!\';\n?>";
>>>>$regs[5] = "\nFred på jord!";
>
>
>>>Det kan du ikke... Hvis du lave et match på noget, der ser således
>>>ud: <?php en-masse-tegn ?> så vil hver forkomst af dette blive lagt
>>>til dit regs array, og dette ville se således ud:
>>>
>>>$regs[1] = "<?php echo 'Hello world!'; ?>";
>>>$regs[2] = "<?php echo 'And goodbye cruel world!'; ?>"
>>>
>>>
>>
>>I manualen står der:
>>If matches are found for parenthesized substrings of pattern
>>and the function is called with the third argument regs, the
>>matches will be stored in the elements of the array regs.
>>$regs[1] will contain the substring which starts at the first
>>left parenthesis; $regs[2] will contain the substring starting
>>at the second, and so on. $regs[0] will contain a copy of the
>>complete string matched.
>>
>>Hvilket jeg forstår som om at min ide skulle kunne lade sig gøre...
>
> Det kan det også, men kig lige på de 2 liner fra din posting, jeg har ladet
> stå. Den ene starter med "<?php" og slutter med "?>", som du prøver at
> matche, den anden gør det _ikke_. $regs indeholder, whatever, der er inden i
> dine (), såfremt der er et match
>
>
>>># utestet
>>>eregi("(<\?php[a-z0-9 '\!;\n\r]+\?>)", $content, $regs);
>>>
>>>Lad mig høre om det var sagen,,,
>>>
>>
>>Nope, det virker ligesom: eregi("(<\?php.*\?>)", $content, $regs);
>
> Jeg prøvede at matche, lige præcist de tegn, du havde angivet... Men jeg
> tror dit problem er at printer du $content ud, så er "<?php" væk
Nej da... "<?php" er der stadigvæk når jeg matcher med "(<\?php.*\?>)",
det forsvinder selvfølgelig når jeg matcher med "<\?php(.*)\?>", men den
bruger jeg heller ikke...
>>>Mastering regular expressions fra O´reilly er _bogen_
>>
>>I know, jeg kan bare ikke lige få fat i den på nuværende tidspunkt da
>>jeg er meget langt fra alt der minder om penge og et anstændigt
>>bibliotek...
>
> Det er nok, det første, der er dit problem. Vil ikke lige mene at et
> bibliotek er uanstændigt, fordi de ikke har den bog, det er en temmelig
> speciel viden, den indeholder
>
Ok, undskyld Herning Bibliotek...
Mvh.
Madsen