Hyrje në shprehjet e rregullta në PHP
Shprehjet e rregullta janë komanda të tilla për kërkim dhe zëvendësim komplekse. Ato lejojnë të bëhen gjëra shumë interesante, por, për fat të keq, jane mjaft të vështira për t'u mësuar.
Ekzistojnë disa funksione PHP për të punuar
me shprehje të rregullta. Ne do të fillojmë të njihemi
me to në shembullin e preg_replace. Ky
funksion si parametër të parë e pranon çfarë të ndryshojë,
ndërsa si të dytin - me çfarë të ndryshojë, dhe si parametër të tretë
- vargun, në të cilin duhet të kryhet zëvendësimi:
<?php
preg_replace(çfarë të ndryshojë, me çfarë, varg);
?>
Ndërsa si parametër të parë funksioni ynë nuk e pranon
thjesht një varg, por një shprehje të rregullt,
e cila përfaqëson një varg me një grup komandash,
të vendosura brenda simboleve të grilës #.
Këto grila quhen kufizues
të shprehjeve të rregullta.
Pas kufizuesve mund të shkruhen modifikues - komanda që ndryshojnë vetitë e përgjithshme të shprehjes së rregullt.
Vetë shprehjet e rregullta përbëhen nga dy lloje simbolesh: nga ata që shënojnë veten dhe nga simbolet-komanda, të cilat quhen simbole të veçanta.
Shkronjat dhe numrat shënojnë vetveten. Në shembullin vijues
ne me ndihmën e shprehjes së rregullt
do të zëvendësojmë shkronjën 'a' me '!':
<?php
preg_replace('#a#', '!', 'bab'); // kthen 'b!b'
?>
Ndërsa pika është një simbol i veçantë
dhe shënon çdo simbol. Në shembullin
vijues ne do të gjejmë një varg sipas modelit të tillë:
shkronja 'x', pastaj çdo simbol, pastaj
përsëri shkronja 'x':
<?php
preg_replace('#x.x#', '!', 'xax eee'); // kthen '! eee'
?>
Është dhënë vargu:
<?php
$str = 'ahb acb aeb aeeb adcb axeb';
?>
Shkruani shprehjen e rregullt, e cila do të gjejë vargjet
'ahb', 'acb', 'aeb'
sipas modelit: shkronja 'a', çdo simbol,
shkronja 'b'.
Është dhënë vargu:
<?php
$str = 'ahb acb aeb aeeb adcb axeb';
?>
Shkruani shprehjen e rregullt, e cila do të gjejë vargjet
'aeeb', 'adcb', 'axeb'
sipas modelit: shkronja 'a', dy çfarëdo
simboli, shkronja 'b'.