Funktio preg_replace
Funktio preg_replace etsii merkkijonosta säännöllisen lausekkeen osumia
ja korvaa ne määritellyllä merkkijonolla. Se ottaa ensimmäisenä parametrina säännöllisen
lausekkeen haulle, toisena - korvausmerkkijonon, kolmantena - lähdemerkkijonon.
Lisäksi voidaan määrittää korvausten enimmäismäärä ja muuttuja korvausten laskemiseen.
Syntaksi
preg_replace(pattern, replacement, subject, [limit], [count]);
Esimerkki
Korvataan kaikki numerot merkkijonossa symbolilla 'X':
<?php
$str = 'a1b2c3';
$res = preg_replace('/\d/', 'X', $str);
echo $res;
?>
Koodin suorituksen tulos:
'aXbXcX'
Esimerkki
Korvataan vain ensimmäiset 2 osumaa:
<?php
$str = 'a1b2c3';
$res = preg_replace('/\d/', 'X', $str, 2);
echo $res;
?>
Koodin suorituksen tulos:
'aXbXc3'
Esimerkki
Takaisinviittausten käyttö korvauksessa:
<?php
$str = 'Hello World';
$res = preg_replace('/(\w+)\s(\w+)/', '$2, $1', $str);
echo $res;
?>
Koodin suorituksen tulos:
'World, Hello'
Esimerkki
Suoritettujen korvausten määrän laskeminen:
<?php
$str = 'a1b2c3';
$count = 0;
$res = preg_replace('/\d/', 'X', $str, -1, $count);
echo "Tulos: $res, Korvaukset: $count";
?>
Koodin suorituksen tulos:
'Tulos: aXbXcX, Korvaukset: 3'
Katso myös
-
funktion
preg_match,
joka suorittaa haun säännöllisellä lausekkeella -
funktion
preg_split,
joka jakaa merkkijonon säännöllisellä lausekkeella