@Extramezz

Как составить такую регулярку?

День добрый, нужно получить из строки:

sdsdas {*TAG*name:[p1,p2,p3]} sdasdas
А может быть и
asdasdas {*TAG*name} sadsadas

Массив
array("name", "p1,p2,p3");
  //Или соответственно только
  array("name");


Чет я туплю сегодня, помогите грамотно составить регулярку.
Мой нерабочий вариант: "/{\*TAG\*(.+)(?:\:[(.+)])?\}"
  • Вопрос задан
  • 163 просмотра
Решения вопроса 1
muhammad_97
@muhammad_97
PHP-разработчик
Как то так: \{\*TAG\*([^:}]*)(?:\:([^\]]*)\])?\}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
xkeirainx
@xkeirainx
Фулстэк энтерпрайз разной степени кровавости
Альтернативный вариант из соседнего лагеря:
\*.+\*(?<name>[^:]*)(:\[(?<params>[^}]*)\])?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы