Funkce preg_replace
Funkce preg_replace hledá v řetězci shody s regulárním výrazem
a nahrazuje je zadaným řetězcem. První parametr přijímá regulární
výraz pro vyhledávání, druhý - řetězec pro nahrazení, třetí - zdrojový řetězec.
Dodatečně lze určit limit nahrazování a proměnnou pro počítání nahrazení.
Syntaxe
preg_replace(pattern, replacement, subject, [limit], [count]);
Příklad
Nahradíme všechny číslice v řetězci symbolem 'X':
<?php
$str = 'a1b2c3';
$res = preg_replace('/\d/', 'X', $str);
echo $res;
?>
Výsledek provedení kódu:
'aXbXcX'
Příklad
Nahradíme pouze první 2 shody:
<?php
$str = 'a1b2c3';
$res = preg_replace('/\d/', 'X', $str, 2);
echo $res;
?>
Výsledek provedení kódu:
'aXbXc3'
Příklad
Použití zpětných odkazů v nahrazení:
<?php
$str = 'Hello World';
$res = preg_replace('/(\w+)\s(\w+)/', '$2, $1', $str);
echo $res;
?>
Výsledek provedení kódu:
'World, Hello'
Příklad
Počítání množství provedených nahrazení:
<?php
$str = 'a1b2c3';
$count = 0;
$res = preg_replace('/\d/', 'X', $str, -1, $count);
echo "Result: $res, Replacements: $count";
?>
Výsledek provedení kódu:
'Result: aXbXcX, Replacements: 3'
Viz také
-
funkci
preg_match,
která provádí vyhledávání pomocí regulárního výrazu -
funkci
preg_split,
která rozděluje řetězec podle regulárního výrazu