Mabano ya Uso katika Semi za Kawaida za PHP
Viendeshaji +, *, ? ni vizuri,
lakini, kwa msaada wao haiwezekani kubainisha idadi
maalum ya marudio. Katika kesi hii, kiendeshaji {}
atakusaidia.
Hufanya kazi kama ifuatavyo: {5}
- marudio matano, {2,5} - hurudiwa
kutoka mbili hadi tano (wote wakiwemo), {2,}
- hurudiwa mara mbili au zaidi.
Mfano
Katika mfano huu, muundo wa utafutaji unaonekana kama hii:
herufi 'x', herufi 'a' mara
moja au mara mbili, herufi 'x':
<?php
$str = 'xx xax xaax xaaax';
$res = preg_replace('#xa{1,2}x#', '!', $str);
?>
Kwa matokeo, kwenye kutofautisha kitaandikwa yafuatayo:
'xx ! ! xaaax'
Mfano
Katika mfano huu, muundo wa utafutaji unaonekana kama hii:
herufi 'x', herufi 'a' mara
mbili au zaidi, herufi 'x':
<?php
$str = 'xx xax xaax xaaax';
$res = preg_replace('#xa{2,}x#', '!', $str);
?>
Kwa matokeo, kwenye kutofautisha kitaandikwa yafuatayo:
'xx xax ! !'
Mfano
Katika mfano huu, muundo wa utafutaji unaonekana kama hii:
herufi 'x', herufi 'a' mara
tatu, herufi 'x':
<?php
$str = 'xx xax xaax xaaax';
$res = preg_replace('#xa{3}x#', '!', $str);
?>
Kwa matokeo, kwenye kutofautisha kitaandikwa yafuatayo:
'xx xax xaax !'
Mfano
Katika mfano huu, muundo wa utafutaji unaonekana kama hii:
herufi 'a' mara kumi:
<?php
$str = 'aaa aaaaaaaaaa aaa';
$res = preg_replace('#a{10}#', '!', $str);
?>
Kwa matokeo, kwenye kutofautisha kitaandikwa yafuatayo:
'aaa ! aaa'
Mfano
Katika mfano huu, mwandishi wa msimbo alitaka muundo kama huu:
herufi 'x', herufi 'a' mara
tatu na chini ya hapo, herufi 'x',
lakini, kwa bahati mbaya, hili - {,3} -
haliendi kazi. Inahitajika kubainisha wazi:
<?php
$str = 'xx xax xaax xaaax';
$res = preg_replace('#xa{1,3}x#', '!', $str);
?>
Kwa matokeo, kwenye kutofautisha kitaandikwa yafuatayo:
'xx ! ! !'
Mfano
Sufuri pia inakubalika:
<?php
$str = 'xx xax xaax xaaax';
$res = preg_replace('#xa{0,3}x#', '!', $str);
?>
Kwa matokeo, kwenye kutofautisha kitaandikwa yafuatayo:
'! ! ! !'
Kazi za Vitendo
Imetolewa mfuatano:
<?php
$str = 'aa aba abba abbba abbbba abbbbba';
?>
Andika semi ya kawaida, ambayo itapata mifuatano
'abba', 'abbba', 'abbbba'
na yao tu.
Imetolewa mfuatano:
<?php
$str = 'aa aba abba abbba abbbba abbbbba';
?>
Andika semi ya kawaida, ambayo itapata mifuatano
ya aina 'aba', ambamo 'b' inakutana
chini ya mara tatu (kuwemo).
Imetolewa mfuatano:
<?php
$str = 'aa aba abba abbba abbbba abbbbba';
?>
Andika semi ya kawaida, ambayo itapata mifuatano
ya aina 'aba', ambamo 'b' inakutana
zaidi ya mara nne (kuwemo).