PHP säännöllisten lausekkeiden takaakatsele
Edellisessä oppitunnissa käsittelimme eteenpäin katsomisen.
Vastaavasti on olemassa positiivinen takaakatsele
- (?<= ). Seuraavassa
esimerkissä korvaus tapahtuu vain, jos ennen
'aaa' on 'x':
<?php
preg_replace('#(?<=x)aaa#', '!', 'xaaa'); // palauttaa 'x!'
?>
Ja on olemassa myös negatiivinen takaakatsele
- (?<! ). Seuraavassa esimerkissä korvaus
tapahtuu vain, jos ennen 'aaa'
ei ole 'x':
<?php
preg_replace('#(?<!x)aaa#', '!', 'baaa'); // palauttaa 'b!'
?>
Annettu merkkijono muuttujilla:
<?php
$str = '$aaa $bbb $ccc';
?>
Hae lista muuttujien nimistä tästä merkkijonosta (ilman dollarimerkkiä).