Kllapat kaçurrel në shprehjet e rregullta të PHP-së
Operatorët +, *, ? janë të mirë,
por, me ndihmën e tyre nuk mund të specifikohet një
numër specifik përsëritjesh. Në këtë rast do t'ju vijë në ndihmë
operatori {}.
Funksionon si më poshtë: {5}
- pesë përsëritje, {2,5} - përsëritet
nga dy në pesë (të dyja përfshirë), {2,}
- përsëritet dy ose më shumë herë.
Shembull
Në këtë shembull modeli i kërkimit duket kështu:
shkronja 'x', shkronja 'a' një
ose dy herë, shkronja 'x':
<?php
$str = 'xx xax xaax xaaax';
$res = preg_replace('#xa{1,2}x#', '!', $str);
?>
Si rezultat në variabël do të shkruhet si më poshtë:
'xx ! ! xaaax'
Shembull
Në këtë shembull modeli i kërkimit duket kështu:
shkronja 'x', shkronja 'a' dy
herë ose më shumë, shkronja 'x':
<?php
$str = 'xx xax xaax xaaax';
$res = preg_replace('#xa{2,}x#', '!', $str);
?>
Si rezultat në variabël do të shkruhet si më poshtë:
'xx xax ! !'
Shembull
Në këtë shembull modeli i kërkimit duket kështu:
shkronja 'x', shkronja 'a' tre
herë, shkronja 'x':
<?php
$str = 'xx xax xaax xaaax';
$res = preg_replace('#xa{3}x#', '!', $str);
?>
Si rezultat në variabël do të shkruhet si më poshtë:
'xx xax xaax !'
Shembull
Në këtë shembull modeli i kërkimit duket kështu:
shkronja 'a' dhjetë herë:
<?php
$str = 'aaa aaaaaaaaaa aaa';
$res = preg_replace('#a{10}#', '!', $str);
?>
Si rezultat në variabël do të shkruhet si më poshtë:
'aaa ! aaa'
Shembull
Në këtë shembull autori i kodit deshte një model të tillë:
shkronja 'x', shkronja 'a' tre
herë ose më pak, shkronja 'x',
por, për fat të keq, kështu - {,3} -
nuk funksionon. Duhet specifikuar qartë:
<?php
$str = 'xx xax xaax xaaax';
$res = preg_replace('#xa{1,3}x#', '!', $str);
?>
Si rezultat në variabël do të shkruhet si më poshtë:
'xx ! ! !'
Shembull
Zero është gjithashtu i lejueshëm:
<?php
$str = 'xx xax xaax xaaax';
$res = preg_replace('#xa{0,3}x#', '!', $str);
?>
Si rezultat në variabël do të shkruhet si më poshtë:
'! ! ! !'
Detyra praktike
Është dhënë një varg:
<?php
$str = 'aa aba abba abbba abbbba abbbbba';
?>
Shkruani një shprehje të rregullt, e cila do të gjejë vargjet
'abba', 'abbba', 'abbbba'
dhe vetëm ata.
Është dhënë një varg:
<?php
$str = 'aa aba abba abbba abbbba abbbbba';
?>
Shkruani një shprehje të rregullt, e cila do të gjejë vargjet
të formës 'aba', në të cilat 'b' shfaqet
më pak se tre herë (përfshirë).
Është dhënë një varg:
<?php
$str = 'aa aba abba abbba abbbba abbbbba';
?>
Shkruani një shprehje të rregullt, e cila do të gjejë vargjet
të formës 'aba', në të cilat 'b' shfaqet
më shumë se katër herë (përfshirë).