Avatar billede gaflen89 Nybegynder
15. maj 2005 - 21:04 Der er 7 kommentarer og
1 løsning

Erstat hvis smiley er inde for <code> tag?

Jeg har denne kode:

        $c = "her er din tekst";
    preg_match_all("#<code>(.*?)</code>#is", $c, $matches);
    foreach($matches[0] as $id => $match) {
        $c = str_replace($match, "[[".$id."]]", $c);
    }
    $smileys = array(
            ":)" => "SMILEY",
            ":D" => "GLAD SMILEY"
        );
    $c = preg_replace(array_keys($smileys), array_values($smileys), $c);
        $re_pattern = "#\[\[(\d+)\]\]#e";
    $re_replace = "\"<code>\".\$matches[1][\\1].\"</code>\"";
    $c = preg_replace($re_pattern, $re_replace, $c);

Fra et spørgsmål stillet af pc-help: http://www.eksperten.dk/spm/600531...

Jeg kunne godt tænke mig det modsatte af ovenstående af denne kode

På forhånd tak :)

//gaflen89
Avatar billede olebole Juniormester
15. maj 2005 - 21:15 #1
<ole>

Det er lettere, at du forklarer, end at jeg leder i gamle spørgsmål. Hvad er det, du ønsker, koden skal gøre?

/mvh
</bole>
Avatar billede gaflen89 Nybegynder
15. maj 2005 - 21:21 #2
Det henter teksten ud fra $c, og ændrer det til SMILEY eller GLAD SMILEY, hvis det er uden for <code></code>. Hvis det er i <code></code>, er det blevet brugt til, at skrive PHP, og derfor må det ikke laves om til smilies.
Avatar billede barklund Nybegynder
15. maj 2005 - 21:35 #3
Jeg lavede vist den oprindelige - ændringen må blive:

    $c = preg_replace(array_keys($smileys), array_values($smileys), $c);

Skal ændres til:

    $c = str_replace(array_keys($smileys), array_values($smileys), $matches[1]);

Tror jeg bare er det, der skal til ;)

--
Morten Barklund
Avatar billede barklund Nybegynder
15. maj 2005 - 21:35 #4
Hovsa:

    $matches[1] = str_replace(array_keys($smileys), array_values($smileys), $matches[1]);

Må det være :)

--
Morten Barklund
Avatar billede gaflen89 Nybegynder
15. maj 2005 - 21:36 #5
Jeg kunne godt tænke mig, at den lavede om til smilies hvis det stod inden for <code></code>
Avatar billede gaflen89 Nybegynder
15. maj 2005 - 21:36 #6
Ups... Havde glemt at opdatere inden jeg selv skrev... Undskyld
Avatar billede gaflen89 Nybegynder
15. maj 2005 - 21:39 #7
Tak for hjælpen... Det virker :D

Smid et svar
Avatar billede gaflen89 Nybegynder
25. maj 2005 - 22:13 #8
Barklund >> Hvis du besøger dette spørgsmål igen, må du sende en mail. Så du kan få dine point på en eller anden facon.

Men jeg nupper dem lige til at starte med, da du ikke har svaret. :(
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester