fork download
  1. <?php
  2.  
  3. $re = '/(?:\G(?!\A)|\(),?\K\d+/';
  4. $str = "Some text 11 have number 12 (9,11,12,13)";
  5. $array = array( 11 => 'eleven', 12 => 'twelve', 13 => 'thirteen');
  6.  
  7. echo $result = preg_replace_callback($re, function ($m) use ($array) {
  8. return !empty($array[$m[0]]) ? $array[$m[0]] : $m[0];
  9. }, $str) . PHP_EOL;
  10.  
Success #stdin #stdout 0.02s 52432KB
stdin
Standard input is empty
stdout
Some text 11 have number 12 (9,eleven,twelve,thirteen)