⊗ppPmRgSP 248 of 447 menu

Карманинг регуляр ифодалар орқали излашда PHP да

Бизда доменни ўз ичига олган маълум бир сатр бор деб фараз қилайлик:

<?php $str = 'eee site.ru bbb'; ?>

Келинг, бу доменни топиш ва уни қисмларга ажратишни амалга оширайлик: домен номини унинг зонасидан ажратамиз. Буни амалга ошириш учун биз регуляр ифодаларнинг махсус карманларидан фойдаланамиз.

Карманлар массив элементлари бўлиб, уларга регуляр ифода орқали топилган қисмларни "қўйиш" мумкин. Бизнинг ҳолимизда биринчи карманга домен номини, иккинчи карманга эса унинг зонасини қўйишимиз мумкин.

Буни амалга оширайлик. Аввалом, сатрдаги доменни топадган регуляр ифодани ёзайлик:

<?php $reg = '#[a-z0-9_-]+\.[a-z]{2,}#'; ?>

Энди бизнинг регуляр ифодамизда қайси қисмлар қайси карманга тушиши кераклигини белгилаймиз. Бу айлана скобкалар ёрдамида амалга оширилади. Келинг, улар ёрдамида домен номини изловчи регуляр ифода қисмини ва домен зонасини изловчи қисмни ажратамиз:

<?php $reg = '#([a-z0-9_-]+)\.([a-z]{2,})#'; ?>

Энди preg_match функциясида учинчи параметр сифатида ўзгарувчини (номи исталганча) кўрсатамиз:

<?php preg_match($reg, $str, $res); ?>

Кўрсатилган ўзгарувчига топилган карманлар билан массив солинади. Бунда, массивнинг ноль-элементида топилган сатр, биринчи элементда - биринчи карман, иккинчи элементда - иккинчи карман ва ҳоказо жойлашади:

<?php preg_match($reg, $str, $res); var_dump($res); // чиқади ['site.ru', 'site', 'ru'] ?>

Санатни ўз ичига олган сатр берилган:

<?php $str = '2025-12-31'; ?>

Йил, ой ва кунни алоҳида карманларга қўйинг.

Файл номини ўз ичига олган сатр берилган:

<?php $str = 'index.html'; ?>

Файл номи ва унинг кенгайтмасини алоҳида карманларга қўйинг.

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