Avatar billede bse11703 Nybegynder
09. september 2001 - 12:15 Der er 13 kommentarer og
1 løsning

Parse streng for url og oprette links

Jeg har brug for en funktion der parser en streng og f.eks.laver alle \'www.site.com om\' til \'<a href=http://www.site.com>www.site.com</a>\'

Dvs. en url parser
Avatar billede bse11703 Nybegynder
09. september 2001 - 12:20 #1
ok det spørgsmålet ser lidt sjovt ud da Eksperten bruger en lign. url parser, jeg håber at i kan forstå spørgsmålet...
Avatar billede wizprod.com Nybegynder
09. september 2001 - 12:20 #2
Avatar billede bse11703 Nybegynder
09. september 2001 - 12:21 #3
Det skal bruges i PHP...
Avatar billede well_r Nybegynder
09. september 2001 - 12:21 #4
function format($str) {
    if (strlen($str) > 512) { $str = substr($str,0,512); }
    $str = stripslashes($str);
    $str = htmlspecialchars($str);
    $str = ereg_Replace(\"  \", \" \", $str);
    $str = ereg_replace(\"\\__([^\\|]+)\\__\",\"<b>\\\\1</b>\",$str);
    $str = ereg_replace(\"\\_([^\\|]+)\\_\",\"<i>\\\\1</i>\",$str);
    $str = ereg_replace(\"\\___([^\\|]+)\\___\",\"<strong>\\\\1</strong>\",$str);
    $str = ereg_replace(\"((f|ht){1}tp://[a-zA-Z0-9@:%_.~#-\\?&]+)\", \"<a href=\\\"\\\\1\\\" target=\\\"_blank\\\"><font color=\\\"\".$userinfo[\"link_color\"].\"\\\">\\\\1</a></font>\", $str);
    $str = ereg_replace(\"([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\\.[a-zA-Z0-9._-]+)\",\"<a href=\\\"mailto:\\\\1\\\">\\\\1</a>\",$str);
    return $str;
    }


bruger den i JWChat :)
Avatar billede wizprod.com Nybegynder
09. september 2001 - 12:22 #5
taget fra mit ovenstående link:

function url2link($str) {
  // Credits: Jonas Delfs - http://delfs.dk
  return eregi_replace(\"((f|ht)tp://)([a-z0-9@:%_.~#\\-\\?&-]+)((\\=|[a-z0-9]|\\?|&|\\/|\\.|-|:|æ|ø|å)+){0,}\", \"<a href=\'\\\\0\' target=\'_blank\'>\\\\0</a>\", $str);
}

Eksempel:

$text = \"Husk lige at se http://delfs.dk/\";
print url2link($text);
Avatar billede tdaugaard Nybegynder
09. september 2001 - 12:24 #6
ljweb\'s \"tagster\" brugt her på eksperten:

brug den med:

$text = format_post2($text)

<?php
    function string_tagster($str) {
        $str = \" \".$str;
        $str = eregi_replace(\"([[:space:]{()\\\"\'\\[~#;\\&?\\_-])((ftp|http|https|telnet|news|nttp|nntp|file):\\/\\/[a-z0-9~#%@æøå\\&:;=\\?\\/\\._-]+[a-z0-9~#%@æøå\\&:;=\\?\\/_\\+-]+)\", \"\\\\1<A HREF=\\\"\\\\2\\\" TARGET=\\\"_blank\\\">\\\\2</A>\", $str);
        $str = eregi_replace(\"([[:space:]{()\\\"\'\\[~#;\\&?\\_-])(www.[a-z0-9~#%@æøå\\&:;=\\?\\/\\._-]+[a-z0-9~#%@æøå\\&:;=\\?\\/_\\+-]+)\", \"\\\\1<A HREF=\\\"http://\\\\2\\\" TARGET=\\\"_blank\\\">\\\\2</A>\", $str);
        $str = eregi_replace(\"([_\\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\\.)+[a-z]{2,4})\",\"<A HREF=\\\"mailto:\\\\1\\\">\\\\1</A>\", $str);
        return substr($str, 1);
    }

    function format_post2 ($str) {
        $str = stripslashes($str);
        $str = str_replace(\"<\", \"&lt;\", $str);
        $str = str_replace(\">\", \"&gt;\", $str);
        $str = string_tagster($str);
        $str = str_replace(\"  \", \"&nbsp; \", $str);
        $str = str_replace(\"\\t\", \"&nbsp;&nbsp;&nbsp; \", $str);
        $str = str_replace(\"\\r\", \"\", $str);
        $str = str_replace(\"\\n\", \"<BR>\", $str);
        return $str;
    }
?>
Avatar billede tdaugaard Nybegynder
09. september 2001 - 12:24 #7
PS. 250 point er for meget til det her. Hvis du vælger at acceptere mit svar så giv mi max. 100 og tag resten selv.
Avatar billede bse11703 Nybegynder
09. september 2001 - 12:24 #8
wizprod >> afviste di svar da jeg troede det var til asp, men det funker... Tak!
Avatar billede wizprod.com Nybegynder
09. september 2001 - 12:26 #9
tdaugaard > ganske sejt
Avatar billede wizprod.com Nybegynder
09. september 2001 - 12:27 #10
er enig med tdaugaard, synes at du _minimum_ skal have 100 p tilbage... det var jo ikke i nærheden af svært..
Avatar billede tdaugaard Nybegynder
09. september 2001 - 12:28 #11
bse11703:> Det var da wizprod.com der fik point ... :o)
Avatar billede tdaugaard Nybegynder
09. september 2001 - 12:28 #12
ljweb\'s her er den bedste \"tagster\" jeg hidtil har set .. den har et par småfejl, men det overlever JEG i hvert fald der hvor jeg bruger den ..
Avatar billede wizprod.com Nybegynder
09. september 2001 - 12:29 #13
bse11-whatever > jeg opretter lige et spm, så for du lige 175 p retur.
Avatar billede wizprod.com Nybegynder
09. september 2001 - 12:31 #14
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