Красивая замена регулярками на PHP

программирование php регулярные выражения

Ребята, не могу придумать, как красиво сделать preg_replace.
Например, есть текст: "............ {a(1,3)} ............ {a(3,9)} .......... {a(0,19)} .........".
Нужно заменить все значения в фигурных скобках на результат выполнения функции "a" :)

function a(x1, x2) { return x1 + x2; }

Примечание:
Miraage:
Мне нужно получить строку ".............4......................12.....................19........."
А ваш вариант не подсчитает, а повыводит строки "1+3", "3+9", "0+19" :)

Примечание:
Miraage:
После апдейта снова будет строка, но не выполнение функции "а" :)

Примечание:
Miraage:
Вот спасибо. Забыл совсем о таком модификаторе как "e".
e (PREG_REPLACE_EVAL):
If this modifier is set, preg_replace() does normal substitution of backreferences in the replacement string, evaluates it as PHP code, and uses the result for replacing the search string.

Я его, конечно, не ставил)
Ответы:
<?php
delete this


12 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.