Použijte JS nahradit text ve zprávě těle Gmail

hlasů
1

Chci psát GnuPG rozšíření pro Google Chrome. Zatím vše funguje podle očekávání: Kdybych detekovat ASCII obrněné krypt-textu, jsem analyzovat s mým rozšířením a pak jej nahradit. (Po zadání hesla)

Gmail však vrhy tělo zprávy s šílené množství značek, takže můj jednoduchý přístup JS už nefunguje. Je tu něco, co můžete zvolit určité množství viditelného textu, bez ohledu na to, kolik záznamy jsou v něm obsažené, a nahradit ji jiným textem? (Tagy nemusí přežít). tj Chci šifrování zrušit obsah zprávy na svém místě.

Položena 09/06/2011 v 18:18
zdroj uživatelem
V jiných jazycích...                            


2 odpovědí

hlasů
1

co budete potřebovat, je něco jako toto:

/<[^>]+>/g

Tento regexp bude odstranit všechny značky, má volno prostý text ... jen musím vyměnit za nic ... něco takového:

"<p>text <b>full</b> of <i>junk</i> and <u>unwanted</u> tags</p>".replace(/<[^>]+>/g, "");

... a o výběru konkrétní části můžete použít retezec, myslím!

Odpovězeno 09/06/2011 v 18:38
zdroj uživatelem

hlasů
0

To, co jsem musel udělat, opravdu potřeba se trochu jinak:

  1. rozšířit svůj regulární výrazy, takže se nestará o značek:

    var re = /-----[\s\S]+?-----[\s\S]+?-----[\s\S]+?-----/gm;

  2. ukládat všechny zápasy, s tagy

  3. používat regex poskytované gibatronic odstranit značky a pak dále zpracovávat vyčištěné textu pomocí gpg

  4. použít body.innerHTML.replace()k nahrazení zápasy od 1) s zpracovaného textu z 3)

Funguje to teď jediným problémem je to zlomí Gmail. layout stránek zůstává neporušená, ale všechna tlačítka a odkazy stávají zaniklý. Jediným řešením je znovu načíst stránku. Musím opravit: S

Odpovězeno 11/06/2011 v 18:15
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more