Доброго времени суток всем!
Есть задача заменить один набор символов на другой набор символов, оставив то, что между ними нетронутым.
То есть что-то типа стандартной замены тегов или викиразметки.
Пришёл к выводу, что делать это проще всего регулярными выражениями, но так как я в ним просто дуб дерево, получается у меня из рук вон плохо.
Вот всё, до чего я смог додуматься
$result = preg_replace("/==(.*)==/", "<h2>$1</h2>", $text);
Это работает ровно до тех пор, пока в тексте встречается один такой случай, как только их встречается больше одного, начинается веселуха, а именно между тегами h2 заключается весь текст, который встречается между первым попаданием == и самым последним ==.
Все статьи по регулярным выражениям, которые мне довелось читать мне не дались.
Возможно я слишком туп, но я был бы чрезмерно признателен за объяснение как исправить эту ситуацию и, если возможно, простыми словами как оно вообще работает?