Evo jednog pitanja za PHP znalce, koji će to vjerojatno znati riješiti elegantnije nego ja.
Ovo je primjer situacije:
<div class="nekidiv1"><div class="nekidiv2">
...
<span class="nekaklasa1">(abcdefgh ijklmno prstuvz)</span>
<span class="nekaklasa2"><p>XYZ123</p></span>
...
</div></div>
...
<div class="nekidiv1"><div class="nekidiv2">
...
<span class="nekaklasa1">(abcdefgh ijklmno prstuvz)</span>
<span class="nekaklasa2"><p>XYZ123</p></span>
...
</div></div>
...
<div class="nekidiv1"><div class="nekidiv2">
...
<span class="nekaklasa1">(abcdefgh ijklmno prstuvz)</span>
<span class="nekaklasa2"><p>XYZ123</p></span>
...
</div></div>
Dakle, to je HTML ne-fiksne dužine u kojemu je potrebno cijeli red #1 u kojem se u nalazi tekst proizvoljne dužine (i pripadajući HTML) zamjeniti s cijelim redom #2 u kojem se također nalazi tekst proizvoljne dužine (te HTML, jelte). Ove "..." između pojedinih redova označavaju ostatak koda (može biti manje-više bilo što).
Drugim riječima, ovo bi trebao biti rezultat:
<div class="nekidiv1"><div class="nekidiv2">
...
<span class="nekaklasa2"><p>XYZ123</p></span>
<span class="nekaklasa1">(abcdefgh ijklmno prstuvz)</span>
...
</div></div>
...
<div class="nekidiv1"><div class="nekidiv2">
...
<span class="nekaklasa2"><p>XYZ123</p></span>
<span class="nekaklasa1">(abcdefgh ijklmno prstuvz)</span>
...
</div></div>
...
<div class="nekidiv1"><div class="nekidiv2">
...
<span class="nekaklasa2"><p>XYZ123</p>
</span><span class="nekaklasa1">(abcdefgh ijklmno prstuvz)</span>
...
</div></div>
Jedna važna napomena: apsolutno sve je varijabilno (u smislu vrste i količine HTML-a između teksta, te same dužine teksta), osim ovih delimitera i njihovih naziva koje sam naveo u primjeru. Dakle, trebalo bi se nekako po njima ravnati, ali nisam siguran kako bi bilo najpametnije pristupiti ovom problemu?
Otvoren sam za sve prijedloge / smjernice / itd.
- +/- sve poruke
- ravni prikaz
- starije poruke gore
Ako nekog zanima, problem je riješen tako da je napravljen array (gdje je svaki red 1 član) i onda su se samo zamijenili članovi arraya gdje je bilo potrebno. Zapravo je jednostavno kad se dođe do prave ideje.