@Aski_io

Как выбрать содержимое внутри символов через preg_match?

У меня есть много строк с которыми нужно работать.
Вот некоторые из них:
- [демонтаж и монтаж электрики с выводом автоматов в квартиру];
- [демонтаж и монтаж новой сантехники (труб, техшкафов ГВС и ХВС)];
- [демонтаж и монтаж канализационного стояка.];
- [выполнение развода ХВС и ГВС на ванную, раковину, туалет, стиральную машину, посудомоечную машину, мойку из полипропиленового или металлопластового материала].

Мне нужно составить шаблоны для того, чтобы вытащить отдельно из каждой строки содержимое.
Шаблоны:
[текст]
[текст.]

Регулярка:
preg_match("/(?<=\[)([^\.\]]+)/", $input_line, $output_array);

Получал:
array(0=>демонтаж и монтаж новой сантехники (труб, техшкафов ГВС и ХВС)1=>демонтаж и монтаж новой сантехники (труб, техшкафов ГВС и ХВС));
array(0=>демонтаж и монтаж канализационного стояка1=>демонтаж и монтаж канализационного стояка);


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

UPD: новая регулярка
/(?<notdot>(?<=\[)([^\.\]]+)(?=\]))|(?P<dot>(?<=\[)([^\]]+)(?=\.\]))/
  • Вопрос задан
  • 144 просмотра
Решения вопроса 1
DevMan
@DevMan
https://eval.in/private/f1fd1f35f66fc1 если я правильно понял что вам нужно.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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