Typ;
variabel='blaj <A NAME="kalle" HREF="foo">bar</A> blaj';
variabel=variabel.replace(/<A NAME=\"kalle\" HREF=\"(.+)\">(.+)<\/A>/gi, "$1 $2");
alert(variabel);
4 svar · 169 visningar · startad av roxpace
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
Typ;
variabel='blaj <A NAME="kalle" HREF="foo">bar</A> blaj';
variabel=variabel.replace(/<A NAME=\"kalle\" HREF=\"(.+)\">(.+)<\/A>/gi, "$1 $2");
alert(variabel);
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
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å.
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