Autor Zpráva
DarkMeni
Profil
Zdravím, zkoušel jsem udělat výraz, který odstraní z textu mezi úvozovkami všechno co vypadá nějak takto:
[::highlight=nazev_třídy::] nebo [::highlight-end::] ale [::highlight-quote-start(nebo end)::] nechal.
Napsal jsem to takto:
var a = a.replace(/(\[::highlight-quote-start::\].*?)(\[::highlight.*?::\]([^(\[::highlight-quote-end::\])]))(.*?\[::highlight-quote-end::\])/ig,'$1$5');

A doufal že to bude fungovat, ale něco se mu nelíbí a já nevim co. (Konkrétně toto: invalid range in character class)

Mělo to například z tohoto textu:
Text... [::highlight=1::]$promenna[::highlight-end::] Text... [::highlight-quote-start::]Text v úvozovkách [::highlight=1::]$zase_promenna[::highlight-end::] a zase text...[::highlight-quote-end::] Text...
Udělat tohle:
Text... [::highlight=1::]$promenna[::highlight-end::] Text... [::highlight-quote-start::]Text v úvozovkách $zase_promenna a zase text...[::highlight-quote-end::] Text...
Ale nějak jsem se do toho zamotal, a tahle chyba to ještě dorazila, dokázal by mi někdo poradit, jak se zbavit aspoň této chyby?
Chamurappi
Profil
Reaguji na DarkMeniho:
Hláška si stěžuje patrně na neplatný rozsah tq ve výčtu znaků [^(\[\::highlight-quote-end::\])]. Do výčtu znaků mimochodem nejde vecpat podvýraz.
DarkMeni
Profil
Ano, bylo to tím, děkuji.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0