⊗ppPmRgNP 255 of 447 menu

Xhepa me Emra në Regex në PHP

Le të supozojmë se duke përdorur preg_match duam të ndajmë një datë në ditë, muaj dhe vit. Le të përdorim xhepa për këtë:

<?php $str = '2025-10-29'; $reg = '#(\d{4})-(\d{2})-(\d{2})#'; preg_match($reg, $str, $match); var_dump($match); // do të printojë ['2025-10-29', '2025', '10', '29'] ?>

Siç e shihni, si rezultat marrim një array, ku në elementin zero do të jetë e gjithë data, në të parën - viti, në të dytën - muaji, në të tretën - dita.

Megjithatë, nganjëherë do të ishte i përshtatshëm të merrnim përmbajtjen e xhepave në formën e një array asociativ. Kjo do të thotë, në rastin tonë do të ishte mirë të merrnim një array si ky:

[ 'year' => '2025', 'month' => '10', 'day' => '29' ]

Për këtë, në regex ekziston një sintaksë e veçantë. Kjo është ajo: (?<name>pattern), ku pattern - është regex, dhe name - është emri i xhepit.

Le të rishkruajmë regex-in tonë për datën duke përdorur xhepa me emra:

<?php $str = '2025-10-29'; $reg = '#(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})#'; preg_match($reg, $str, $match); var_dump($match); ?>

Si rezultat, do të kemi një array asociativ ku çelësat do të jenë emrat e xhepave, dhe vlerat - ajo që u kap në to:

[ 'year' => '2025', 'month' => '10', 'day' => '29', ]

Në fakt, në array me rezultat, vlerat e xhepave do të jenë të disponueshme si sipas emrit, ashtu edhe sipas numrit rendor. Kjo do të thotë, për shembull, viti do të jetë i disponueshëm me çelësin 'year' dhe me numrin 1, muaji - me çelësin 'month' dhe me numrin 2 e kështu me radhë:

[ 'year' => '2025', 'month' => '10', 'day' => '29', 1 => '2025', 2 => '10', 3 => '29' ]

Xhepat e emërtuar të përshkruar kanë edhe disa sintaksa alternative: (?P<name>pattern) dhe (?'name'pattern).

Jepet një varg me kohë:

<?php $str = '12:59:59'; ?>

Vendosni orët, minutat dhe sekondat në xhepa të veçantë me emra.

Shkruani një funksion që në array me rezultat fshin të gjitha xhepat e numëruar, duke lënë vetëm ata me emra.

Shqip
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ne përdorim cookie për funksionimin e sajtit, analizën dhe personalizimin. Përpunimi i të dhënave bëhet në përputhje me Politikën e Privatësisë.
prano të gjitha konfiguro refuzo