STRING:
$string = '{$string#anything#something this string will output default |ucfirst|strtoupper}';
PREG_REPLACE_CALLBACK КОД (PHP):
$string = preg_replace_callback('/\{\$?([^# ]+)\#?([^ ]+)? ?([^|]+)?[ \|]?([^\}]+)?\}/', $matches, $string);
ВЫХОД ($ совпадений):
Array
(
[0] => {$string#anything#something can you hear me? |ucfirst|ucfirst|ucfirst|strtoupper}
[1] => string
[2] => anything#something
[3] => can you hear me?
[4] => ucfirst|strtoupper
)
ТРЕБОВАНИЕ: вместо {$string this string will output default |ucfirst|strtoupper}
, я хочу использовать {$string this string will output default ucfirst|strtoupper}
(обратите внимание: знак канала перед ucfirst
удален);
ВАЖНО: вывод (т. Е. Массив совпадений $) должен выглядеть так же, как напечатано выше.
Ваша помощь будет высоко оценена, спасибо за чтение.