Utangulizi kwa Semi za Kawaida katika PHP
Semi za kawaida ni amri za kutafuta na kubadilisha changamano. Zinaruhusu kufanya mambo ya kuvutia sana, lakini, kwa bahati mbaya, ni ngumu kuzipata.
Kuna vitendakazi kadhaa vya PHP vya kufanya kazi
na semi za kawaida. Tutaanza kuzifahamu
kwa kutumia mfano wa preg_replace.
Kitendakazi hiki huchukua kigezo cha kwanza cha nini kubadilisha,
na cha pili - badala ya nini, na kigezo cha tatu
- mfuatano ambao unahitaji kubadilisha:
<?php
preg_replace(nini kubadilisha, badala ya nini, mfuatano);
?>
Wakati huo huo, kigezo chetu cha kwanza hakitachukui
msururu tu, bali semi ya kawaida,
inayowakilisha mfuatano na seti ya amri,
zilizowekwa ndani ya alama za gridi #.
Gridi hizi huitwa vikomo
vya semi za kawaida.
Baada ya vikomo unaweza kuandika vibadilishaji - amri, ambazo hubadilisha sifa za jumla za semi ya kawaida.
Semi za kawaida zenyewe zinajumuisha aina mbili za herufi: zile ambazo huelezea wenyewe na kutoka kwa herufi za amri, ambazo huitwa alama maalum.
Herufi na nambari huelezea wenyewe. Katika kinachofuata
mfano tutabadilisha herufi 'a' hadi '!' kwa kutumia semi ya kawaida:
<?php
preg_replace('#a#', '!', 'bab'); // itarudisha 'b!b'
?>
Lakini nukta ni alama maalum
na inaashiria alahura yoyote. Katika kinachofuata
mfano tutapata mfuatano kulingana na muundo huu:
herufi 'x', kisha alama yoyote, kisha
tena herufi 'x':
<?php
preg_replace('#x.x#', '!', 'xax eee'); // itarudisha '! eee'
?>
Imewekwa mfuatano:
<?php
$str = 'ahb acb aeb aeeb adcb axeb';
?>
Andika semi ya kawaida, ambayo itapata mifuatano
'ahb', 'acb', 'aeb'
kwa muundo: herufi 'a', alama yoyote,
herufi 'b'.
Imewekwa mfuatano:
<?php
$str = 'ahb acb aeb aeeb adcb axeb';
?>
Andika semi ya kawaida, ambayo itapata mifuatano
'aeeb', 'adcb', 'axeb'
kwa muundo: herufi 'a', alama zozote mbili,
herufi 'b'.