⊗ppPmRgRP 253 of 447 menu

Fickor vid ersättning med reguljära uttryck i PHP

När du arbetar med funktionen preg_replace, om vi lägger något i en ficka i det reguljära uttrycket, så kan vi i ersättningssträngen infoga innehållet i denna ficka genom att skriva dollartecknet $ och numret på fickan. Till exempel, $0 - nollte fickan, $1 - första fickan, $2 - andra fickan och så vidare.

Låt oss titta på exempel för att förstå varför detta är användbart och hur man använder det.

Exempel

Låt oss hitta alla tal och ersätta dem med samma tal, men inom klammerparenteser. För att göra detta kommer vi att ersätta alla hittade tal med sig själva, men inom klammerparenteser:

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

Som ett resultat kommer följande att skrivas in i variabeln:

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

Exempel

Låt oss hitta alla strängar som representerar tal med 'x' runt om och ersätta dessa tal med sig själva, men omgivna av '!'-tecken:

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

Som ett resultat kommer följande att skrivas in i variabeln:

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

Exempel

Låt oss lösa följande problem: det finns strängar av typen 'aaa@bbb' - bokstäver, sedan ett @-tecken, sedan bokstäver. Vi behöver byta plats på bokstäverna före '@' och efter. Låt oss implementera:

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

Som ett resultat kommer följande att skrivas in i variabeln:

'bbb@aaa ddd@ccc'

Praktiska uppgifter

Given en sträng:

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

Byt plats på siffrorna i alla tvåsiffriga tal.

Given en sträng med ett datum:

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

Omvandla detta datum till '2025.12.31'.

Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa