⊗ppPmRgNP 255 of 447 menu

Genoemde groepe in PHP regulêre uitdrukkings

Kom ons sê met behulp van preg_match wil ons 'n datum opbreek in dag, maand en jaar. Laat ons groepe daarvoor gebruik:

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

Soos jy kan sien, kry ons in die resultaat 'n skikking, waarin die nulste element die hele datum sal wees, in die eerste - die jaar, in die tweede - die maand, in die derde - die dag.

Soms sou dit egter gerieflik wees om die inhoud van die groepe as 'n assosiatiewe skikking te kry. Dit is in ons geval sou dit goed wees om die volgende skikking te kry:

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

Vir hierdie doel bestaan daar 'n spesiale sin in regulêre uitdrukkings. Hier is dit: (?<name>pattern), waar pattern - dit is die regulêre uitdrukking, en name - dit is die naam van die groep.

Kom ons herskryf ons regulêre uitdrukking vir die datum deur middel van genoemde groepe:

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

As gevolg hiervan sal ons 'n assosiatiewe skikking hê, waarin die sleutels die name van die groepe sal wees, en die waardes - dit wat daarin gevang is:

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

Eintlik sal in die skikking met die resultaat die waardes van die groepe beskikbaar wees sowel volgens naam as volgens volgorde nommer. Dit wil sê, byvoorbeeld, die jaar sal beskikbaar wees volgens die sleutel 'year' en volgens nommer 1, die maand - volgens sleutel 'month' en volgens nommer 2 en so meer:

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

Die beskryfde genoemde groepe het nog 'n paar alternatiewe sintakse: (?P<name>pattern) en (?'name'pattern).

Gegee 'n string met tyd:

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

Plaas die ure, minute en sekondes in aparte genoemde groepe.

Skryf 'n funksie wat in die skikking met die resultaat al die genommerde groepe sal verwyder, en slegs die genoemde groepe sal laat.

Afrikaans
Azə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
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp