roxpaceMedlem sedan juli 200174 inlägg
Jag vill kunna göra en
variabel.replace(new RegExp("<A NAME=\"kalle\" HREF=\"*\">*</A>","gi"), "ny text och ingen tag");
Där jag har skrivit * ska du det kunna vara vilken text eller tecken som helst (som # eller/) och det på två ställen, jag har provat på många sätt men inte lyckats få till det på ett bra sätt ännu.
Någon som har ett bra tips ? Tack på förhand :)
Mvh
/Roberth
JojoxxMedlem sedan juni 20004 306 inlägg
Typ;
variabel='blaj <A NAME="kalle" HREF="foo">bar</A> blaj';
variabel=variabel.replace(/<A NAME=\"kalle\" HREF=\"(.+)\">(.+)<\/A>/gi, "$1 $2");
alert(variabel);
roxpaceMedlem sedan juli 200174 inlägg
Tack för tipset, men...
Bra tips, men det verkar som den ersätter för mycket på sidan och inte bara "inom" den taggen.
Någon idé om varför ?
Mvh
/Roberth
dectgapMedlem sedan sep. 20021 542 inlägg
Om du vet att det bara är ren text mellan <a>-taggarna kan du ändra följande:
variabel=variabel.replace(/<A NAME=\"kalle\" HREF=\"([^\"]+)\">([^<]+)<\/A>/gi, "$1 $2");
Huruvida det kommer att fungera eller inte vet jag inte, men det är klart värt ett test.
Det här med greedy och un-greedy har jag fortfarande inte riktigt förstått mig på.
roxpaceMedlem sedan juli 200174 inlägg
Ganska bra
Det var bättre, men den ska även acceptera tecken som % & ? / \ plus att den ska klara av linebreaks ( \n ) och även mjuka sådana, och sluta ersättandet när den ser sluttecknena som är angiva som > eller "> osv :)
Mvh
/Roberth