Вы должны исключить _ и {}, это должно быть возможно с [^ _ {}] * вместо. *

аюсь создать базовый шаблонизатор. Как и движки шаблонов, уже доступные как открытый исходный код, я использую методы поиска и замены.

Однако, поскольку поиск и замена должны быть жестко закодированы, это не так уж и гибко. Я имею в виду, например, что я использую что-то вроде этого

$templateMarkup = '<div class="title">{_TITLE_}</div>';
$renderedMarkup = str_replace("{_TITLE_}",$title,$templateMarkup);
echo $renderedMarkup;

Как видите, это жестко закодировано. Поэтому я должен преднамеренно знать все заполнители, чтобы выполнить успешную визуализацию.

Я немного слаб в регулярном выражении. Но я знаю, смогу ли я разработать регулярное выражение, которое может соответствовать всему тексту, начиная с{_ и окончание_} и получить значение между ними, я просто мог бы создать гибкий шаблонизатор.

Мне нужна помощь с регулярным выражением.

Если я полностью иду по неверному пути, пожалуйста, предупредите меня.

Для тех, кто думает, что я заново изобретаю колесо. Вот мое объяснение

Templating engines, that are already available are quite unnecessarily complex. 
My requirements are simple and so I am builidng my own simple engine. 

Ответы на вопрос(3)

Ваш ответ на вопрос