Blijft lastig, die preg_replaces...
Ik heb bijvoorbeeld de volgende code:
Waarbij regel 2 en 4 variabel zijn (kunnen dus van alles bevatten). Regel 1, 3 en 5 zijn altijd hetzelfde.
Ik wil dit graag converteren naar:
Hiervoor heb ik deze code bedacht:
$startcode, $middencode en $eindcode zijn respectievelijk regel 1, 3 en 5 uit het eerste codeblok.
Dit heeft het volgende resultaat:
Nog niet helemaal lekker dus. Bij reeks1 staat nog een ( ervoor die er niet hoort en bij het tweede stuk staat ((reeks1),300,300,600,600, die ik daar niet wil.
Ik zit me er al een tijd op stuk te bijten, ben al een aardig eind gekomen, maar hier loop ik echt op vast. Wat doe ik fout?
Ik heb bijvoorbeeld de volgende code:
HTML:
1
2
3
4
5
| <!--teststart--><script type="text/javascript">test( (reeks1) 300,300,600,600, (reeks2) )</script><!--testend--> |
Waarbij regel 2 en 4 variabel zijn (kunnen dus van alles bevatten). Regel 1, 3 en 5 zijn altijd hetzelfde.
Ik wil dit graag converteren naar:
code:
1
| [test=(reeks1)](reeks2)[/test] |
Hiervoor heb ik deze code bedacht:
PHP:
1
| $txt = preg_replace("#$startcode(.+?)$middencode(.+?)$eindcode#is", "[test=\$2\]\$1\[/test]" , $txt ); |
$startcode, $middencode en $eindcode zijn respectievelijk regel 1, 3 en 5 uit het eerste codeblok.
Dit heeft het volgende resultaat:
code:
1
| [test=((reeks1)]((reeks1),300,300,600,600, (reeks2)[/test] |
Nog niet helemaal lekker dus. Bij reeks1 staat nog een ( ervoor die er niet hoort en bij het tweede stuk staat ((reeks1),300,300,600,600, die ik daar niet wil.
Ik zit me er al een tijd op stuk te bijten, ben al een aardig eind gekomen, maar hier loop ik echt op vast. Wat doe ik fout?
[ Voor 17% gewijzigd door Tjolk op 19-05-2008 22:48 ]
Tjolk is lekker. overal en altijd.