Autor Zpráva
vacjos
Profil *
Ahoj,
potřčeboval bych poradit s následujícím problémkem. Mám v proměnné("text") část HTML kódu a potřebuji zjistit, zda je v ní hledaný text, který je proměnlivý (uložený v proměnné "hledany_text"). Potřebuji tedy, aby při vyhledávání požadovaného textu skript ignoroval texty v HTML entitách a prohledával pouze v čistém textu. A ještě jako druhý krok (nebo pokud by se to dalo spojit do jednoho) prohledávat i texty v atributech title. Skript by neměl rozlišovat velikost písmen.

Příklad:
var hledany_text = 'text';
var text = '<center><img src="foto.jpg" class="img" title="RŮZNÉ TEXTY POPISKŮ"><span class="text_1">LIBOVOLNÝ TEXT</span></center><br>';
ver re = // výraz, který bych potřeboval poradit
var nalezeno = text.search(re); // výsledek - nalezeno/nenalezeno/případně kde

Výsledek mého příkladu by měl být:
- nalezeno u atributu title
- nalezeno v prostém textu (mezi spanem)
- ignoruje slovo text v class

Díky,díky
vacjos
Profil *
Prohledání čistého textu bez HTML jsem vymyslel takto:

var hledany_text = 'text';
var text = '<center><img src="foto.jpg" class="img" title="RŮZNÉ TEXTY POPISKŮ"><span class="text_1">LIBOVOLNÝ TEXT</span></center><br>';
var text_bez_html = text.toUpperCase();
text_bez_html = text_bez_html.replace(/<\/?[^>]+(>|$)/g, "");
var nalezeno = text_bez_html.search(hledany_text.toUpperCase());

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: