⊗ppPmRgChS 231 of 447 menu

Наборы сімвалаў у рэгулярных выразах PHP

Групы сімвалаў \d і \w не вельмі гібкія. Нават такая простая задача, як знайсці ўсе літары, але не лічбы - не можа быць вырашана імі. Для такіх задач след выкарыстоўваць квадратныя дужкі, якія прадстаўляюць сабой аперацыю ЦІ.

Квадратныя дужкі замяняюць сабой адзін сімвал, любы з пералічаных усярэдзіне. Напрыклад, вось так: #x[abc]x# - мы кажам, што па краях павінны стаяць літары ікс, а ўсярэдзіне - адзін сімвал: альбо 'a', альбо 'b', альбо 'c'.

Пасля квадратных дужак можна пісаць аператары паўтарэння. Напрыклад, вось так: #x[abc]+x# - мы кажам, што ўсярэдзіне іксаў можа быць любая колькасць сімвалаў 'a', 'b' і 'c' - у любых камбінацыях.

Можна не толькі пералічваць сімвалы, але ствараць групы сімвалаў, запісваючы паміж двума сімваламі злучок. Напрыклад, вось так: #[a-d]# - мы атрымліваем усе сімвалы ад 'a' да 'd'.

Давайце паглядзім на прыкладах.

Прыклад

У гэтым прыкладзе шаблон пошуку выглядае так: паміж іксамі любая літара ад 'a' да 'z':

<?php $str = 'xax xbx xcx x@x'; $res = preg_replace('#x[a-z]x#', '!', $str); ?>

У выніку ў зменную запишацца наступнае:

'! ! ! x@x'

Прыклад

У гэтым прыкладзе шаблон пошуку выглядае так: паміж іксамі любая літара ад 'a' да 'k':

<?php $str = 'xax xbx xmx x@x'; $res = preg_replace('#x[a-k]x#', '!', $str); ?>

У выніку ў зменную запишацца наступнае:

'! ! xmx x@x'

Прыклад

У гэтым прыкладзе шаблон пошуку выглядае так: паміж іксамі любая літара ад 'A' да 'Z':

<?php $str = 'xax xBx xcx x@x'; $res = preg_replace('#x[A-Z]x#', '!', $str); ?>

У выніку ў зменную запишацца наступнае:

'xax ! xcx x@x'

Прыклад

У гэтым прыкладзе шаблон пошуку выглядае так: паміж іксамі любая лічба ад 0 да 9:

<?php $str = 'xax x1x x3x x5x x@x'; $res = preg_replace('#x[0-9]x#', '!', $str); ?>

У выніку ў зменную запишацца наступнае:

'xax ! ! ! x@x'

Прыклад

У гэтым прыкладзе шаблон пошуку выглядае так: паміж іксамі любая лічба ад 3 да 7:

<?php $str = 'xax x1x x3x x5x x@x'; $res = preg_replace('#x[3-7]x#', '!', $str); ?>

У выніку ў зменную запишацца наступнае:

'xax x1x ! ! x@x'

Прыклад

У гэтым прыкладзе шаблон пошуку выглядае так: паміж іксамі любая літара ад 'a' да 'z' або лічба ад 1 да 9:

<?php $str = 'xax x1x x3x x5x x@x'; $res = preg_replace('#x[a-z1-9]x#', '!', $str); ?>

У выніку ў зменную запишацца наступнае:

'! ! ! ! x@x'

Прыклад

У гэтым прыкладзе шаблон пошуку выглядае так: паміж іксамі любая літара ад 'a' да 'z' або літара ад 'A' да 'Z':

<?php $str = 'xax xBx xcx x5x x@x'; $res = preg_replace('#x[a-zA-Z]x#', '!', $str); ?>

У выніку ў зменную запишацца наступнае:

'! ! ! x5x x@x'

Прыклад

У гэтым прыкладзе шаблон пошуку выглядае так: паміж іксамі любая літара ад 'a' да 'z' або лічбы 1, 2:

<?php $str = 'xax xbx x1x x2x x3x'; $res = preg_replace('#x[a-z12]x#', '!', $str); ?>

У выніку ў зменную запишацца наступнае:

'! ! ! ! x3x'

Прыклад

У гэтым прыкладзе шаблон пошуку выглядае так: паміж іксамі літары ад 'a' да 'z' у колькасці ад 1 і больш:

<?php $str = 'xx xabesx xaadx x123x xa3x'; $res = preg_replace('#x[a-z]+x#', '!', $str); ?>

У выніку ў зменную запишацца наступнае:

'xx ! ! ! x123x xa3x'

Прыклад

Зробім так, каб колькасць літар магло быць і нуль:

<?php $str = 'xx xabesx xaadx x123x xa3x'; $res = preg_replace('#x[a-z]*x#', '!', $str); ?>

У выніку ў зменную запишацца наступнае:

'! ! ! x123x xa3x'

Практычныя задачы

Дадзены радок:

<?php $str = 'aba aea aca aza axa'; ?>

Напішыце рэгулярку, якая знойдзе па наступным шаблоне: па краях стаяць літары 'a', а паміж імі - літара 'b', 'e' альбо 'x'.

Дадзены радок:

<?php $str = 'a1a a3a a7a a9a aba'; ?>

Напішыце рэгулярку, якая знойдзе па наступным шаблоне: па краях стаяць літары 'a', а паміж імі - лічба ад 3-х да 6-ці.

Дадзены радок:

<?php $str = 'aba aea afa aha aga'; ?>

Напішыце рэгулярку, якая знойдзе па наступным шаблоне: па краях стаяць літары 'a', а паміж імі - літара ад a да g.

Дадзены радок:

<?php $str = 'aba aea afa aha aga'; ?>

Напішыце рэгулярку, якая знойдзе па наступным шаблоне: па краях стаяць літары 'a', а паміж імі - літара ад a да f і ад j да z.

Дадзены радок:

<?php $str = 'aAa aea aEa aJa a3a'; ?>

Напішыце рэгулярку, якая знойдзе па наступным шаблоне: па краях стаяць літары 'a', а паміж імі - літара ад a да f і ад A да D.

Дадзены радок:

<?php $str = 'aAXa aeffa aGha aza ax23a a3sSa'; ?>

Напішыце рэгулярку, якая знойдзе па наступным шаблоне: па краях стаяць літары 'a', а паміж імі - маленькія лацінскія літары, не зачапіўшы астатніх.

Дадзены радок:

<?php $str = 'aAXa aeffa aGha aza ax23a a3sSa'; ?>

Напішыце рэгулярку, якая знойдзе па наступным шаблоне: па краях стаяць літары 'a', а паміж імі - маленькія і вялікія лацінскія літары, не зачапіўшы астатніх.

Дадзены радок:

<?php $str = 'aAXa aeffa aGha aza ax23a a3sSa'; ?>

Напішыце рэгулярку, якая знойдзе па наступным шаблоне: па краях стаяць літары 'a', а паміж імі - маленькія лацінскія літары і лічбы, не зачапіўшы астатніх.

Беларуская
AfrikaansAzərbaycanБългарскиবাংলাČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мы выкарыстоўваем cookie для працы сайта, аналітыкі і персаналізацыі. Апрацоўка дадзеных адбываецца згодна Палітыкай канфідэнцыяльнасці.
прыняць усе наладзіць адхіліць