Πίσω προβολή στις κανονικές εκφράσεις της PHP
Στο προηγούμενο μάθημα αναλύσαμε την προβολή προς τα εμπρός.
Με παρόμοιο τρόπο υπάρχει θετική πίσω προβολή
- (?<= ). Στο ακόλουθο
παράδειγμα η αντικατάσταση θα συμβεί, μόνο αν μπροστά από το
'aaa' υπάρχει 'x':
<?php
preg_replace('#(?<=x)aaa#', '!', 'xaaa'); // επιστρέφει 'x!'
?>
Και υπάρχει επίσης αρνητική πίσω προβολή
- (?<! ). Στο ακόλουθο παράδειγμα η αντικατάσταση
θα συμβεί, μόνο αν μπροστά από το 'aaa'
δεν υπάρχει 'x':
<?php
preg_replace('#(?<!x)aaa#', '!', 'baaa'); // επιστρέφει 'b!'
?>
Δίνεται μια συμβολοσειρά με μεταβλητές:
<?php
$str = '$aaa $bbb $ccc';
?>
Λάβετε έναν πίνακα με τα ονόματα των μεταβλητών από αυτήν τη συμβολοσειρά (χωρίς το δολάριο).