Amri 'au' katika Semi za Kawaida za PHP
Katika somo hili tutachambua amri
|, ambayo inawakilisha
toleo lenye nguvu zaidi la AU ikilinganishwa na
amri []. Amri hii inaruhusu
kugawanya usemi wa kawaida katika sehemu kadhaa.
Wakati huo huo, kitu kinachotafutwa kinaweza kukidhi ama kimoja
sehemu ya usemi wa kawaida, ama nyingine. Hebu tuangalie
kwa mifano.
Mfano
Katika mfano huu, muundo wa utafutaji ni: herufi
tatu 'a' au herufi tatu 'b':
<?php
$str = 'aaa bbb abb';
$res = preg_replace('#a{3}|b{3}#', '!', $str);
?>
Matokeo yake, ndani ya variable itaandikwa yafuatayo:
'! ! abb'
Mfano
Katika mfano huu, muundo wa utafutaji ni: herufi
tatu 'a' au kuanzia 1 na zaidi
ya herufi 'b':
<?php
$str = 'aaa bbb bbbb bbbbb axx';
$res = preg_replace('#a{3}|b+#', '!', $str);
?>
Matokeo yake, ndani ya variable itaandikwa yafuatayo:
'! ! ! ! axx'
Mfano
Katika mfano huu, muundo wa utafutaji ni: herufi moja au zaidi au tarakimu tatu:
<?php
$str = 'a ab abc 1 12 123';
$res = preg_replace('#[a-z]+|\d{3}#', '!', $str);
?>
Matokeo yake, ndani ya variable itaandikwa yafuatayo:
'! ! ! 1 12 !'
Mfano
Mstari wima unaweza kugawanya usemi wa kawaida si katika sehemu mbili tu, bali katika idadi yoyote ya sehemu:
<?php
$str = 'aaa bbb ccc ddd';
$res = preg_replace('#a+|b+|c+#', '!', $str);
?>
Matokeo yake, ndani ya variable itaandikwa yafuatayo:
'! ! ! ddd'
Mfano
Ikiwa mstari wima uko ndani ya mabano ya mviringo,
basi 'au' inafanya kazi tu ndani
ya mabano hayo. Kwa mfano, hebu tutafute masharti
kulingana na muundo ufuatao: mwanzoni ipo
ama 'a', ama 'b' mara moja au zaidi,
kisha herufi mbili 'x':
<?php
$str = 'axx bxx bbxx exx';
$res = preg_replace('#(a|b+)xx#', '!', $str);
?>
Matokeo yake, ndani ya variable itaandikwa yafuatayo:
'! ! ! exx'
Kazi za Vitendo
Uko na msharti:
<?php
$str = 'aeeea aeea aea axa axxa axxxa';
?>
Andika semi ya kawaida, ambayo itapata masharti
kwa muundo: pembeni zina herufi 'a',
na kati yao - ama herufi 'e' idadi
yoyote ya mara au herufi 'x' idadi yoyote
ya mara.
Uko na msharti:
<?php
$str = 'aeeea aeea aea axa axxa axxxa';
?>
Andika semi ya kawaida, ambayo itapata masharti
kwa muundo: pembeni zina herufi 'a',
na kati yao - ama herufi 'e' mara mbili
au herufi 'x' idadi yoyote ya mara.