@posters

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

Помогите составить регулярку для php функции preg_replace.

Даны строки такого вида:
rheumatismus, I m (греч.; лат. fluxio) истечение, катар (г. ventris, thoracis, gutturis PM).
rho n indecl. (греч.) ро (название греческой буквы р,соотв. русскому р) С, Лив.


Нужно оставить все, что в скобочках, которые всегда начинаются так: "(греч.". Кроме этого нужно оставить все, что до этих скобочек.
Короче, должно остаться:
rheumatismus, I m (греч.; лат. fluxio)
rho n indecl. (греч.)


Моя попытка:
preg_replace('/(\()греч.+(\))(.+)/iu', '\1', $input_lines);

Не работает, как задумано.
  • Вопрос задан
  • 129 просмотров
Решения вопроса 1
AgentSmith
@AgentSmith
Это мой правильный ответ на твой вопрос
/(.+?\(греч\.[^)]*\))/iug
https://regex101.com/r/4WchQX/1

Надо добавить параметр /g - global, чтобы искало все совпадения, а не только первое
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы