Avatar billede jenslyn_s Nybegynder
12. juni 2006 - 19:11 Der er 13 kommentarer og
1 løsning

tilføje target _blank på alle links

Hvordan bruger jeg noget regexp. til at indsætte target="_blank" på en html-streng

<a href="http://www.lol.com">linkText</a>

Jeg kan jo ikke bare erstatte '">' da mange andre tags også rammes så :-/

hilfe
Avatar billede Slettet bruger
12. juni 2006 - 19:15 #1
Jeg tror måde er at erstatte href="Og-så-hente-urlen-med-igen" target="_blank">linkText</a>
Avatar billede jenslyn_s Nybegynder
12. juni 2006 - 19:17 #2
Ja, det må det være, men er ikke skrap nok til regex, til selv at kunne :-/
Avatar billede boomshanka Nybegynder
12. juni 2006 - 19:25 #3
det kommer an på hvor avanceret du vil have den - er alle ancor-tags som ovenstående, eller er der nogen som allerede indeholder target="_blank"?

Det mest simple ville være at bruge dette som mønster:

(<a href)

og bruge det i en replace-metode, hvor du erstatter det med:

<a target="_blank" href

Det er blot pseudo-kode, for jeg ved ikke hvilket sprog du bruger...
Avatar billede Slettet bruger
12. juni 2006 - 19:33 #4
Men hvad nu hvis det er lige som mig, hvor jeg går meget op i at target er skrevet efter href?
Avatar billede nielle Nybegynder
12. juni 2006 - 19:44 #5
Et bud:

$tekst = "... <a href='http://www.lol.com'>linkText</a> ...";

$pattern = "/(<a [^>]*)/i";
$tekst = preg_replace($pattern, "$1 target='_blank'", $tekst);
Avatar billede jenslyn_s Nybegynder
12. juni 2006 - 19:44 #6
boomshanka, tror du måske at jeg bruger PHP? ;-)
Avatar billede boomshanka Nybegynder
12. juni 2006 - 19:46 #7
he he, så kan jeg vist lære det...ja, det må jo unægtelig være tilfældet.
Avatar billede boomshanka Nybegynder
12. juni 2006 - 19:54 #8
Jeg tror DOM'en er ligeglad med rækkefølgen af parametre. Et hurtigt tjek med XHTML 1.0 transitional og HTML 4.01 strict gav heller ikke nogen fejl på W3.org
Avatar billede mclemens Nybegynder
12. juni 2006 - 20:56 #9
P.s.: XHTML 1.1 er target ikke gyldig ...
Avatar billede jenslyn_s Nybegynder
12. juni 2006 - 21:30 #10
Klart ja, indsætter den blot inden href. - the easy way
Avatar billede jenslyn_s Nybegynder
15. juni 2006 - 16:20 #11
Nielle, smid et svar.
Avatar billede nielle Nybegynder
15. juni 2006 - 16:24 #12
Det lyder da ellers som om at du ville bruge boomshanka's løsning?
Avatar billede jenslyn_s Nybegynder
18. juni 2006 - 19:19 #13
Brugte din, nielle. smid et svar
Avatar billede nielle Nybegynder
18. juni 2006 - 19:21 #14
Ok så :^)
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