Funcția preg_replace

Funcția preg_replace caută în șir potriviri cu expresia regulată și le înlocuiește cu șirul specificat. Primul parametru primește expresia regulată pentru căutare, al doilea - șirul de înlocuire, al treilea - șirul sursă. Opțional, se poate specifica o limită de înlocuiri și o variabilă pentru numărarea înlocuirilor.

Sintaxă

phppreg_replace(pattern, replacement, subject, [limit], [count]);

Exemplu

Să înlocuim toate cifrele din șir cu simbolul 'X':

php<?php
  $str = 'a1b2c3';
  $res = preg_replace('/\d/', 'X', $str);
  echo $res;
?>

Rezultatul executării codului:

php'aXbXcX'

Exemplu

Să înlocuim doar primele 2 potriviri:

php<?php
  $str = 'a1b2c3';
  $res = preg_replace('/\d/', 'X', $str, 2);
  echo $res;
?>

Rezultatul executării codului:

php'aXbXc3'

Exemplu

Utilizarea referințelor inverse în înlocuire:

php<?php
  $str = 'Hello World';
  $res = preg_replace('/(\w+)\s(\w+)/', '$2, $1', $str);
  echo $res;
?>

Rezultatul executării codului:

php'World, Hello'

Exemplu

Numărarea cantității de înlocuiri efectuate:

php<?php
  $str = 'a1b2c3';
  $count = 0;
  $res = preg_replace('/\d/', 'X', $str, -1, $count);
  echo "Result: $res, Replacements: $count";
?>

Rezultatul executării codului:

php'Result: aXbXcX, Replacements: 3'

Vedeți și

  • funcția preg_match,
    care efectuează căutare prin expresie regulată
  • funcția preg_split,
    care împarte un șir prin expresie regulată