Autor Zpráva
Charlie
Profil
Zdravím,

přicházím s elementárním dotazem - potřebuji v nějakém řetězci "opravit" ASCII zápis některých HTML znaků, protože jsou v řetězci úvodní amperstandy nahrazeny za jejich entitu &. To znamená, že potřebuji změnit například " zpět na ".

Chtěl bych si pro tyto potřeby vytvořit zhruba následující funkci:
function replaceAmps(string) {

var replaced_string = new String(string);
replaced_string.replace( , ); // Tady chybí dva argumenty - regex a náhrada
return replaced_string;
}

Do třetího řádku potřebuji doplnit dva argumenty - regulérní výraz a řetězec, kterým se má regex nahradit. V JavaScriptu jsem absolutní zelenáč, obzvlášť pak co se týče regulérních výrazů, takže nemám ponětí, jak by měly argumenty vypadat.

Teoreticky by šlo nahradit &# za &# - to se mi zdá ale zbytečně nebezpečné, protože by to mohlo poškodit řetězec. V ideálním případě by mělo jít o regex, který najde celý ASCII zápis (tzn. i s koncovým středníkem) a nahradí ho opět kompletním řetězcem.

Moje snažení ztroskotalo na tom, že nevím, jak zamaskovat #, aby to JS interpret nebral jako komentář, takže jsem nebyl schopen sestavit ani první, jednodušší variantu.

Děkuji za každý nápad.
Charlie
Profil
Tak, už jsem to vyřešil - navedl mě halogan. I když právě téměř spí, poradil mi, abych text (entity) nahradil už v PHP, odkud ho posílám přes XMLHTTPRequest do prohlížeče.
Toto téma je uzamčeno. Odpověď nelze zaslat.