Я использую ctags в Linux для создания тегов для исходного кода с использованием vim и плагина Tlist. Текущий синтаксический анализ функции ctags для PHP ужасен, поэтому я скачал исходники для ctags и собираюсь изменить регулярное выражение, которое анализирует функции.
Поскольку я имею дело с большим количеством кода, функции которого объявлены различными способами, мне нужно регулярное выражение для надежного синтаксического анализа имен функций.
Есть ли у вас один, которым вы могли бы поделиться, который анализирует имя функции php из строки исходного кода?
Это исправленный и «улучшенный» текущий источник ctags, который пропускает многие функции, особенно те, которые отмечены как final
или static
вначале.
(^[ \t]*)(public[ \t]+|protected[ \t]+|private[ \t]+)?(static[ \t]+)?function[ \t]+&?[ \t]*([" ALPHA "_][" ALNUM "_]*)