Example #1
0
 /**
  * Метод ищет в строке подстроки, удовлетворяющие шаблону и заменяет их по очереди на подстановки,
  * переданные в виде массива.  Поиск идёт по регулярному выражению!
  * 
  * @param string $pattern - шаблон
  * @param string $text - текст
  * @param array $tokens - массив подстановок
  * @return string
  */
 public static function replace($pattern, $text, array $tokens)
 {
     self::$inst = self::$inst ? self::$inst : new PregReplaceCyclic();
     self::$inst->tokens = check_condition($tokens, 'Не переданы элементы для замены');
     if (is_assoc_array($tokens)) {
         raise_error('Недопустим ассоциативный массив подстановок. Передан: ' . array_to_string($tokens, true));
     }
     self::$inst->idx = 0;
     self::$inst->count = count($tokens);
     return preg_replace_callback($pattern, array(self::$inst, '_replace'), $text);
 }
Example #2
0
 /**
  * Метод ищет в строке подстроки, удовлетворяющие шаблону и заменяет их по очереди на подстановки,
  * переданные в виде массива. Поиск идёт по регулярному выражению!
  * 
  * @param string $pattern - шаблон
  * @param string $text - текст
  * @param array $tokens - массив подстановок
  * @return string
  */
 public static function pregReplaceCyclic($pattern, $text, array $tokens)
 {
     return PregReplaceCyclic::replace($pattern, $text, $tokens);
 }