Funkcja preg_replace
Funkcja preg_replace wyszukuje w ciągu znaków dopasowania do wyrażenia regularnego
i zastępuje je określonym ciągiem. Jako pierwszy parametr przyjmuje wyrażenie regularne
do wyszukiwania, jako drugi - ciąg zastępujący, jako trzeci - ciąg źródłowy.
Dodatkowo można określić limit zamian oraz zmienną do zliczania zamian.
Składnia
preg_replace(pattern, replacement, subject, [limit], [count]);
Przykład
Zamieńmy wszystkie cyfry w ciągu na symbol 'X':
<?php
$str = 'a1b2c3';
$res = preg_replace('/\d/', 'X', $str);
echo $res;
?>
Wynik wykonania kodu:
'aXbXcX'
Przykład
Zamieńmy tylko pierwsze 2 dopasowania:
<?php
$str = 'a1b2c3';
$res = preg_replace('/\d/', 'X', $str, 2);
echo $res;
?>
Wynik wykonania kodu:
'aXbXc3'
Przykład
Użycie odwróconych referencji w zamianie:
<?php
$str = 'Hello World';
$res = preg_replace('/(\w+)\s(\w+)/', '$2, $1', $str);
echo $res;
?>
Wynik wykonania kodu:
'World, Hello'
Przykład
Zliczanie liczby wykonanych zamian:
<?php
$str = 'a1b2c3';
$count = 0;
$res = preg_replace('/\d/', 'X', $str, -1, $count);
echo "Result: $res, Replacements: $count";
?>
Wynik wykonania kodu:
'Result: aXbXcX, Replacements: 3'
Zobacz też
-
funkcję
preg_match,
która wykonuje wyszukiwanie według wyrażenia regularnego -
funkcję
preg_split,
która dzieli ciąg według wyrażenia regularnego