Autor Zpráva
Darker
Profil
Na PHP.net jsem si našel r. výraz na smazání HTML tagů ze stringu.
Výraz ale obsahuje /* takže když jej vložím do kódu, spláču nad výdělkem:
text=text.replace(/<+\s*\/*\s*([A-Z][A-Z0-9]*)\b[^>]*\/*\s*>+/i,"");


Navíc nevím, jak výraz upravit, aby neodstraňoval tag A (odkaz).
Chamurappi
Profil
Reaguji na Darkera:
V sekvenci /* nevidím žádný problém. Poděl se s námi o své splakání.

na smazání HTML tagů
Uvedený replace smaže jen jednu značku, chybí modifikátor g.

jak výraz upravit, aby neodstraňoval tag A
Kousek zaměřující název značky nahraď třeba za ([B-Z][A-Z0-9]*|A[A-Z0-9]+) nebo ([B-Z]|[A-Z][A-Z0-9]+).
Darker
Profil
Chamurappi:
V sekvenci /* nevidím žádný problém. Poděl se s námi o své splakání.
Aha, PSpad mě zmátl. Moc věřím jeho zvýrazňovači syntaxe.

Uvedený replace smaže jen jednu značku, chybí modifikátor g.
To je fakt, díky. Výraz byl psaný pro preg_replace, ta to má jako výchozí.

Nemůžu to teď vyzkoušet ale mělo by to být takhle, že?
text=text.replace(/<+\s*\/*\s*([B-Z]|[A-Z][A-Z0-9]+)\b[^>]*\/*\s*>+/i,"");

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: