PHP регуляр ифодаларда тўплам ичидаги шляпка символы
Малумингиздек, [] ичидаги шляпка
инкорни ифодалайди, агар у қавс бошланғичида ёзилган бўлса.
Демак, у шу қавс ичида махсус символдир.
Шляпкани символ сифатида олиш учун
уни ё эсклаш, ёки биринчи ўриндан олиб ташлаш керак.
Мисол
Кейинги мисолда қидириш намунаси шундай:
биринчи символ - 'd' дан бошқа ҳамма символ,
сўнгра иккита 'x' ҳарфи.
<?php
$str = 'axx bxx ^xx dxx';
$res = preg_replace('#[^d]xx#', '!', $str);
?>
Натижада ўзгарувчига куйидагилар ёзилади:
'! ! ! dxx'
Мисол
Энди эса қидириш намунаси шундай: биринчи символ
- 'd' ёки '^', сўнгра иккита
'x' ҳарфи:
<?php
$str = 'axx bxx ^xx dxx';
$res = preg_replace('#[d^]xx#', '!', $str);
?>
Натижада ўзгарувчига куйидагилар ёзилади:
'axx bxx ! !'
Мисол
Шляпкани биринчи ўриндан олиб ташламасдан, уни орқаги чизиқ ёрдамида эсклаш мумкин, ва ўзини ифодалай бошлайди:
<?php
$str = 'axx bxx ^xx dxx';
$res = preg_replace('#[\^d]xx#', '!', $str);
?>
Натижада ўзгарувчига куйидагилар ёзилади:
'axx bxx ! !'
Амалий машқлар
Берилган сатр:
<?php
$str = '^xx axx ^zz bkk @ss';
?>
Шу намуна бўйича сатрларни топадиган регуляр ифодани ёзинг: шляпка ёки собака, сўнгра иккита лотин ҳарфи.
Берилган сатр:
<?php
$str = '^xx axx ^zz bkk @ss';
?>
Шу намуна бўйича сатрларни топадиган регуляр ифодани ёзинг: шляпка эмас ва собака эмас, сўнгра иккита лотин ҳарфи.
Берилган сатр:
<?php
$str = '^xx axx ^zz bkk';
?>
Шу намуна бўйича сатрларни топадиган регуляр ифодани ёзинг: шляпка эмас, сўнгра иккита лотин ҳарфи.