Автоматическое тестирование регулярок в PHP
Биёед рамзеро нависем, ки ба мо имкон медиҳад регулярокҳои навишташудаамонро ба осонӣ дар якчанд сатрҳо тест кунем.
Бигзор регуляроқи мо барои тестҳо дар тағирёбандаи зерин нигоҳ дошта шавад:
<?php
$reg = '#\d{3,}#';
?>
Биёед як массиви сатрҳоро барои санҷишҳо созем:
<?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>';
}
?>
Бигзор ба шумо лозим аст, ки санҷед, ки дар сатр як рақами касрӣ мавҷуд аст. Бо истифода аз скрипти пешниҳодшуда, регуляроқи худро дар сатрҳои гуногун санҷед.