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';
?>
Төмөнкү үлгү боюнча саптарды таба турган регулярдуу ифодону жазыңыз: шляпка эмес, андан кийин эки латын тамгасы.