Funksie preg_replace_callback

Die funksie preg_replace_callback voer 'n soektog deur 'n regulêre uitdrukking en vervanging uit met die gebruik van 'n callback-funksie. Die eerste parameter aanvaar die regulêre uitdrukking, die tweede - die callback-funksie, en die derde - die string om te verwerk. Die callback-funksie ontvang 'n skikking van ooreenkomste en moet 'n vervangingsstring teruggee.

Sintaksis

phppreg_replace_callback(pattern, callback, subject, [limit], [count]);

Voorbeeld

Laat ons alle getalle in die string met hul kwadrate vervang:

php<?php
  $str = 'Numbers: 2, 4, 6';
  $res = preg_replace_callback('/\d+/', function($matches) {
    return $matches[0] * $matches[0];
  }, $str);
  echo $res;
?>

Resultaat van die kode-uitvoering:

php'Numbers: 4, 16, 36'

Voorbeeld

Laat ons alle woorde na hoofletters omskep:

php<?php
  $str = 'hello world';
  $res = preg_replace_callback('/\b\w+\b/', function($matches) {
    return strtoupper($matches[0]);
  }, $str);
  echo $res;
?>

Resultaat van die kode-uitvoering:

php'HELLO WORLD'

Voorbeeld

Laat ons hakies rondom elke getal byvoeg:

php<?php
  $str = '1 2 3 4 5';
  $res = preg_replace_callback('/\d+/', function($matches) {
    return '('.$matches[0].')';
  }, $str);
  echo $res;
?>

Resultaat van die kode-uitvoering:

php'(1) (2) (3) (4) (5)'

Sien ook

  • die funksie preg_replace,
    wat vervanging deur 'n regulêre uitdrukking uitvoer
  • die funksie preg_match,
    wat soektog deur 'n regulêre uitdrukking uitvoer