⊗ppPmRgRP 253 of 447 menu

Kieszenie w zamianach za pomocą wyrażeń regularnych w PHP

Podczas pracy z funkcją preg_replace, jeśli coś umieścimy w kieszeni w wyrażeniu regularnym, to w ciągu zastępczym możemy wstawić zawartość tej kieszeni pisząc znak dolara $ i numer kieszeni. Na przykład, $0 - kieszeń zerowa, $1 - pierwsza kieszeń, $2 - druga kieszeń i tak dalej.

Po co to jest potrzebne i jak z tego korzystać, przyjrzyjmy się na przykładach.

Przykład

Znajdźmy wszystkie liczby i zamiast nich wstawmy te same liczby, ale w nawiasach klamrowych. W tym celu wszystkie znalezione liczby będziemy zastępować nimi samymi, ale w nawiasach klamrowych:

<?php $str = '1 23 456 xax'; $res = preg_replace('#(\d+)#', '{$1}', $str); ?>

W rezultacie do zmiennej zostanie zapisane następujące:

'{1} {23} {456} xax'

Przykład

Znajdźmy wszystkie ciągi znaków, reprezentujące liczby z iksami wokół i zamieńmy te liczby na nie same, ale z '!' znakami wokół:

<?php $str = 'x1x x23x x456x xax'; $res = preg_replace('#x(\d+)x#', '!$1!', $str); ?>

W rezultacie do zmiennej zostanie zapisane następujące:

'!1! !23! !456! xax'

Przykład

Rozwiążmy następujące zadanie: dane są ciągi znaków typu 'aaa@bbb' - litery, potem małpa, potem litery. Należy zamienić miejscami litery przed '@' i po. Zrealizujmy:

<?php $str = 'aaa@bbb ccc@ddd'; $res = preg_replace('#([a-z]+)@([a-z]+)#', '$2@$1', $str); ?>

W rezultacie do zmiennej zostanie zapisane następujące:

'bbb@aaa ddd@ccc'

Zadania praktyczne

Dany jest ciąg znaków:

<?php $str = '12 34 56 78'; ?>

Zamień miejscami cyfry we wszystkich dwucyfrowych liczbach.

Dany jest ciąg znaków z datą:

<?php $str = '31.12.2025'; ?>

Przekształć tę datę na '2025.12.31'.

Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć