⊗ppPmRgSBh 251 of 447 menu

Preg_match_all-funktion käyttäytymisen muuttaminen PHP:ssä

preg_match_all-funktion neljännen parametrin avulla voidaan muuttaa tallennusryhmien (capture groups) ryhmittelytapaa.

Katsotaan, mitä arvoja tämä parametri voi saada:

Parametri Kuvaus
PREG_PATTERN_ORDER Oletustila. Tulokset ryhmitellään tallennusryhmien mukaan - taulukon nollas elementti sisältää nollannen tallennusryhmän tulokset, taulukon ensimmäinen elementti sisältää ensimmäisen tallennusryhmän tulokset ja niin edelleen.
PREG_SET_ORDER Tulokset ryhmitellään osumien mukaan - jokainen taulukon elementti sisältää taulukon löydetyistä tallennusryhmistä.

Katsotaan nyt tämän parametrin käyttöä esimerkkien avulla:

Esimerkki

Poimitaan kaikki aikaleimat merkkijonosta ja niiden komponentit:

<?php $time = '12:01:02 13:03:04 14:05:06'; preg_match_all('#(\d\d):(\d\d):(\d\d)#', $time, $res); print_r($res); ?>

Koodin suorituksen tulos:

[ 0 => ['12:01:02', '13:03:04', '14:05:06'], 1 => ['12', '13', '14'], 2 => ['01', '03', '05'], 3 => ['02', '04', '06'] ]

Esimerkki

Käytetään nyt PREG_SET_ORDER-lippua ryhmittelyyn osumien mukaan:

<?php $time = '12:01:02 13:03:04 14:05:06'; preg_match_all('#(\d\d):(\d\d):(\d\d)#', $time, $res, PREG_SET_ORDER); print_r($res); ?>

Koodin suorituksen tulos:

[ 0 => '12:01:02', 1 => '12', 2 => '01', 3 => '02' ], [ 0 => '13:03:04', 1 => '13', 2 => '03', 3 => '04' ], [ 0 => '14:05:06', 1 => '14', 2 => '05', 3 => '06' ]

Käytännön tehtävät

Annettu merkkijono päivämäärillä:

<?php $str = '2023-10-29 2024-11-30 2025-12-31'; ?>

Etsi kaikki päivämäärät, erottaen vuosi, kuukausi ja päivä omiksi tallennusryhmikseen. Tee niin, että ensimmäinen alitaulukko sisältää ensimmäisen päivämäärän sen tallennusryhmineen, toinen alitaulukko - toisen päivämäärän sen tallennusryhmineen ja niin edelleen.

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää