Funkcija preg_replace

Funkcija preg_replace ieško eilutėje atitikimų su reguliariuoju reiškiniu ir pakeičia juos nurodyta eilute. Pirmuoju parametru priima reguliarųjį reiškinį paieškai, antruoju - pakeitimo eilutę, trečiuoju - pradinę eilutę. Papildomai galima nurodyti pakeitimų limitą ir kintamąjį pakeitimų skaičiavimui.

Sintaksė

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

Pavyzdys

Pakeiskime visus skaitmenis eilutėje simboliu 'X':

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

Kodo vykdymo rezultatas:

php'aXbXcX'

Pavyzdys

Pakeiskime tik pirmuosius 2 atitikimus:

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

Kodo vykdymo rezultatas:

php'aXbXc3'

Pavyzdys

Atgalinių nuorodų naudojimas pakeitime:

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

Kodo vykdymo rezultatas:

php'World, Hello'

Pavyzdys

Atliktų pakeitimų skaičiaus skaičiavimas:

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

Kodo vykdymo rezultatas:

php'Result: aXbXcX, Replacements: 3'

Taip pat žiūrėkite

  • funkciją preg_match,
    kuri atlieka paiešką pagal reguliarųjį reiškinį
  • funkciją preg_split,
    kuri skaido eilutę pagal reguliarųjį reiškinį