Autor | Zpráva | ||
---|---|---|---|
PavV Profil |
#1 · Zasláno: 5. 3. 2022, 10:37:49
Zdravím a prosím o radu,
v html mám např. <h1 id='ruzovyslon' class='phr'>Růžový slon v domě a jiné <mark data-id="2">log</mark> ičnostil<span class="subtitle"><br>aneb<br>Úvod do tajů výrokové <mark data-id="3">log</mark> iky se zvláštním přihlédnutím k <mark data-id="4">log</mark> ickým hádankám a rébusům</span></h1> a chci odstranit všechny tagy mark v js mám var text = $('#text-frame').contents().find('[data-id=0]').text(); var regex = new RegExp( /<mark data-id="\d*">log<\/mark>/, 'ig'); $('#text-frame').contents().find('.phr').each(function() { $(this).html( $(this).html().replace( regex, text)); }) log dám proměnou text nic se neděje.
Potřebuji aby zůstal pouze označení text s respektováním velikých přímen a unikodu (vše mám v UTF-8) Dík za radu |
||
tttttttttttttt Profil * |
#2 · Zasláno: 5. 3. 2022, 13:42:06
Regulární výrazy na to nejsou dobré. Zřejmě už to máš i naparsované jako HTML, tak je lepší modifikovat DOM než to převádět na text a zpět.
var div = document.createElement('div') div.innerHTML = " <h1 id='ruzovyslon' class='phr'>Růžový slon v domě a jiné <mark data-id=\"2\">log</mark> ičnostil<span class=\"subtitle\"><br>aneb<br>Úvod do tajů výrokové <mark data-id=\"3\">log</mark> iky se zvláštním přihlédnutím k <mark data-id=\"4\">log</mark> ickým hádankám a rébusům</span></h1> " Array.from(div.getElementsByTagName("mark")).forEach((elem) => elem.replaceWith(elem.innerHTML)) div.innerHTML // " <h1 id=\"ruzovyslon\" class=\"phr\">Růžový slon v domě a jiné // log // ičnostil<span class=\"subtitle\"><br>aneb<br>Úvod do tajů výrokové // log // iky se zvláštním přihlédnutím k log // ickým hádankám a rébusům</span></h1> // // " |
||
Časová prodleva: 2 roky
|
0