Αυτοματοποιημένη Δοκιμή Κανονικών Εκφράσεων σε PHP
Ας γράψουμε κώδικα που θα μας επιτρέπει να δοκιμάζουμε εύκολα τις κανονικές εκφράσεις που γράφουμε αμέσως σε πολλαπλές γραμμές.
Ας υποθέσουμε ότι η κανονική μας έκφραση για τις δοκιμές αποθηκεύεται στην ακόλουθη μεταβλητή:
<?php
$reg = '#\d{3,}#';
?>
Ας δημιουργήσουμε έναν πίνακα με strings για δοκιμές:
<?php
$arr[] = 'aaa 123 bbb';
$arr[] = 'aaa 12345 bbb';
$arr[] = 'aaa 12x bbb';
$arr[] = 'aaa 12 bbb';
?>
Ας διατρέξουμε αυτόν τον πίνακα με έναν βρόγχο, ελέγχοντας κάθε στοιχείο με την κανονική μας έκφραση:
<?php
foreach ($arr as $str) {
echo $str . ' ' . preg_match($reg, $str) . '<br>';
}
?>
Ας συγκεντρώσουμε όλο τον κώδικα μαζί και θα πάρουμε ένα βολικό πρότυπο για τη δοκιμή κανονικών εκφράσεων:
<?php
$reg = '#\d{3,}#'; // η κανονική σας έκφραση
$arr[] = 'aaa 123 bbb'; // 1
$arr[] = 'aaa 12345 bbb'; // 1
$arr[] = 'aaa 12x bbb'; // 0
$arr[] = 'aaa 12 bbb'; // 0
foreach ($arr as $str) {
echo $str . ' ' . preg_match($reg, $str) . '<br>';
}
?>
Ας υποθέσουμε ότι πρέπει να ελέγξετε ότι σε ένα string υπάρχει ένας κλασματικός αριθμός. Χρησιμοποιώντας το προτεινόμενο script, δοκιμάστε την κανονική σας έκφραση σε διάφορα strings.