ПХП регуларни израз / регуларни израз: прег_матцх () - прег_реплаце ()

Преглед садржаја:

Anonim

Шта је регуларни израз у ПХП-у?

Редовни изрази ПХП, познати и као регуларни изрази , моћни су алгоритам за подударање образаца који се може извести у једном изразу. Регуларни изрази користе аритметичке операторе као што су (+, -, ^) за стварање сложених израза. Они вам могу помоћи у обављању задатака као што су потврђивање адреса е-поште, ИП адресе итд.

Зашто користити регуларне изразе

  • ПХП регуларни изрази поједностављују препознавање образаца у подацима низа позивањем једне функције. Ово нам штеди време за кодирање.
  • При валидацији корисничког уноса као што су адреса е-поште, имена домена, бројеви телефона, ИП адресе
  • Истицање кључних речи у резултатима претраге
  • Приликом креирања прилагођеног ХТМЛ шаблона. Регек у ПХП-у се може користити за идентификацију ознака предлошка и њихово замењивање стварним подацима.

У овом водичу за ПХП Регек научићете:

  • Уграђене функције регуларног израза у ПХП-у
  • ПХП Прег_матцх ()
  • ПХП Прег_сплит ()
  • ПХП Прег_реплаце ()
  • Мета карактери регуларног израза
  • Објашњавајући образац

Уграђене функције регуларног израза у ПХП-у

ПХП има уграђене функције које нам омогућавају рад са редовним функцијама, што ћемо научити у овом водичу за ПХП Регулар Екпрессионс. Погледајмо најчешће коришћене функције регуларних израза у ПХП-у.

  • прег_матцх () у ПХП-у - ова функција се користи за подударање образаца у ПХП-у на низу. Враћа труе ако је пронађено подударање и фалсе ако подударање није пронађено.
  • прег_сплит () у ПХП-у - ова функција се користи за извођење подударања узорка на низу, а затим подјелу резултата у нумерички низ
  • прег_реплаце () у ПХП-у - ова функција се користи за извођење подударања узорка на низу, а затим замену подударања наведеним текстом.

Испод је синтакса функције регуларног израза, као што је ПХП прег_матцх (), ПХП прег_сплит () или ПХП прег_реплаце ().

ОВДЕ,

  • "име_функције (...)" је или ПХП прег_матцх (), ПХП прег_сплит () или ПХП прег_реплаце ().
  • "/ ... /" Косе косе црте означавају почетак и крај наше функције ПХП регек тестера
  • „'/ паттерн /'“ је образац са којим треба да се подударамо
  • „субјецт“ је текстуални низ са којим се мора упарити

Погледајмо сада практичне примере који примењују горе наведене ПХП функције регуларног израза.

ПХП Прег_матцх ()

Први пример користи прег_матцх () у ПХП функцији за извођење једноставног подударања обрасца за реч гуру у датом УРЛ-у.

Доњи код приказује имплементацију функције тестер прег_матцх () за горњи пример.

Пређите на УРЛ хттп: //лоцалхост/пхптутс/прег_матцх_симпле.пхп

Хајде да испитамо део кода одговоран за наш излаз „прег_матцх ('/ гуру /', $ ми_урл)“ ОВДЕ,

  • „прег_матцх (...)“ је ПХП функција регуларног израза
  • „'/ гуру /'“ је образац регуларног израза који се подудара
  • „$ ми_урл“ је променљива која садржи текст за упоређивање.

Дијаграм испод сумира горње тачке

ПХП Прег_сплит ()

Погледајмо сада још један пример који користи прег_сплит () у ПХП функцији.

Узећемо фразу у низу и експлодирати је у низ; образац који се подудара је један простор.

Текстуални низ који ће се користити у овом примеру је „Волим регуларне изразе“.

Доњи код илуструје примену горњег примера.

Прегледајте УРЛ хттп: //лоцалхост/пхптутс/прег_сплит.пхп

ПХП Прег_реплаце ()

Погледајмо сада прег_реплаце () у ПХП функцији која врши подударање узорка, а затим замењује образац нечим другим.

Код испод тражи реч гуру у низу.

Реч гуру замењује речју гуру окружену цсс кодом која истиче боју позадине.

Под претпоставком да сте сачували датотеку прег_реплаце.пхп, прегледач на УРЛ хттп: //лоцалхост/пхптутс/прег_реплаце.пхп

Мета карактери регуларног израза

Горњи примери су користили врло основне обрасце; метазнакови нам једноставно омогућавају да изводимо сложенија подударања образаца као што је тестирање валидности адресе е-поште. Погледајмо сада најчешће коришћене метакарактере.

Метакарактер Опис Пример
. Поклапа се са било којим појединачним знаком, осим са новом линијом /./ подудара се са било чим што има један знак
^ Поклапа се са почетком или низом / изузима знакове / ПХ / подудара се са било којим низом који почиње са ПХ
$ Поклапа се образац на крају низа / цом $ / одговара гуру99.цом, иахоо.цом итд.
* Подудара се са било којом нулом (0) или више знакова / цом * / одговара рачунару, комуникацији итд.
+ Захтева да се претходни знакови појаве најмање једном / иах + оо / поклапа се са иахоо
\ Користи се за бекство од мета знакова /иахоо+\.цом/ тачку третира као дословну вредност
[…] Класа карактера / [абц] / одговара абц
аз Одговара малим словима / аз / одговара кул, срећан итд.
АЗ Поклапа се са великим словима / АЗ / одговара ШТА, КАКО, ЗАШТО итд.
0-9 Поклапа се са било којим бројем између 0 и 9 / 0-4 / одговара 0,1,2,3,4

Горња листа даје само најчешће коришћене метазнакове у регуларним изразима.

Погледајмо сада прилично сложен пример који проверава валидност адресе е-поште.

Објашњење обрасца "[/^[а-зА-З0-9._-]+@[а-зА-З0-9-]+\.[а-зА-З.]{2,5}$/] "

ОВДЕ,

  • "'/ ... /'" започиње и завршава регуларни израз
  • „[а-зА-З0-9 ._-]“ подудара се са било којим малим или великим словима, бројевима између 0 и 9 и тачкама, доњим цртама или цртицама.
  • „+ @ [а-зА-З0-9-]“ подудара се са симболом @ праћеним малим или великим словима, бројевима између 0 и 9 или цртицама.
  • „+ \. [а-зА-З.] {2,5} $ /“ избегава тачку помоћу косе црте, а затим се подудара са било којим малим или великим словима дужине знакова између 2 и 5 на крају низа.

Прегледајте УРЛ хттп: //лоцалхост/пхптутс/прег_матцх.пхп

Као што видите из горњег примера слома, метазнакови су врло моћни када је у питању подударање образаца.

Резиме

  • Регуларни израз или регуларни израз у ПХП-у је алгоритам за подударање образаца
  • Регуларни изрази су врло корисни при извршавању провјера ваљаности, стварању ХТМЛ шаблон система који препознају ознаке итд.
  • ПХП има уграђене функције, наиме ПХП прег_матцх (), ПХП прег_сплит () и ПХП прег_реплаце () које подржавају регуларне изразе.
  • Метазнакови нам омогућавају да створимо сложене обрасце