Jeg har en artikel tekst som "kan" indeholde en eller flere email adresser i ren tekst. Det jeg skal bruge er en funktion der søger artikel teksten igennem, finder eventuelle email adresser og indsætter et html Mailto: link på disse emails.
I denne funktion gåes der ud fra at det sidste space inden @ er starten på email og det første efter @ er afslutningen.
Eksempel: "Artikel tekst. xxxxx xxxx xxx xx xxxx xxx x person@domain.dk xxx xx xx xx xx xx xxx x" skulle altså blive til "Artikel tekst. xxxxx xxxx xxx xx xxxx xxx x <a href="mailto:person@domain.dk">person@domain.dk</a> xxx xx xx xx xx xx xxx x".
Artikel teksten kan, som sagt, indeholde en eller flere email adresser eller den kan være uden email adresser overhovedet.
Funktionen skal kunne tage højde for både en, flere eller ingen adresser.
Endvidere, om mail adressen er gyldig eller ej, behøves der ikke tages stilling til. Dermed ment, at søgning efter DNS MX record ikke er påkrævet. Der er udelukkende tale om en insættelse af html link på email adresser
Hvis du kan lave funktionen eller pege mig i retningen af et script der kan, ville jeg blive meget glad
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
med ereg_replace. Jeg kan ikke helt huske php syntax for regulære udtryk. Men noget i stil med. ereg_replace('[\w\d]*@[\w\d]*.(\w){3}', '<a href="mailto:{1}">{1}</a>', artikelTekst);
hmm.. ikke helt korrekt kan jeg så se... tagsters version er : $str = preg_replace ("/([\s\"])([\w\.\-_]+)@([\w\-_]+)\.([\w\.\-_]+)/i", "\\1<a href=\"mailto:\\2@\\3.\\4\"".$ins_class.">\\2@\\3.\\4</a>", $str);
Hvis du er villig til at acceptere, at ting, der bare indeholder et @, men faktisk ikke er email-adresser bliver lavet til links (Lidt lige som i Outlook Express i de udgaver, jeg har brugt.) så er følgende meget simple regex nok:
Den tager ganske simpelt et @ med alle de omstående ikke-blanktegn, ud til første blanktegn før og efter (eller hvis der ikke er blanktegn, tager den til starten/enden af strengen). Det eneste krav, den stiller til adresserne er, at der skal være ikke-blanktegn både før og efter @.
PS. Tak til detox for at ride min kæphest for mig, når jeg ikke selv har tid ;-)
Synes godt om
Ny brugerNybegynder
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.