Найти все шаблоны, используемые в функциях preg_ * в коде PHP - PullRequest
0 голосов
/ 21 февраля 2019

У меня есть около 4k PHP-файлов.В коде используется более 6k функций preg_ *.

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

Я хочу создать такой список: https://www.exakat.io/reports/codeigniter/datas/inventories_regex.html

Я пытался выполнить поиск по регулярному выражению, но я 'Я не понимаю это правильно.

регулярное выражение: https://regexr.com/48s1s

Ответы [ 2 ]

0 голосов
/ 21 февраля 2019

Лучший инструмент, который я могу придумать для такой задачи, - это структурный поиск в PhpStorm (коммерческое программное обеспечение).

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

Таким образом, вы можете сделать что-то вроде $function$($pattern$,$argument$,$anotherargument$), установите для фильтра функцию значениесопоставьте несколько функций и установите поиск для захвата части шаблона.

0 голосов
/ 21 февраля 2019

В зависимости от вариантов этих шаблонов, я бы рекомендовал использовать «Найти и заменить» IDE, например, с Атом или Код Visual Studio

  • найти функцию preg_ * в вашей кодовой базе
  • извлечь использованный шаблон в константу
  • найти шаблон в ваших файлах
  • заменить его определенной константой

Это может быть довольно ручная работа, но вы сможете делать это шаг за шагом

...