查找PHP代码中preg_ *函数中使用的所有模式

时间:2019-02-21 19:25:35

标签: php regex phpstorm code-search

我大约有4k个PHP文件。该代码中使用了超过6k个preg_ *函数。

我需要找到代码中使用的所有模式并将其提取。我的目的是对这些模式进行分组,并用一个命名常量替换它们。

我要列出这样的列表:https://www.exakat.io/reports/codeigniter/datas/inventories_regex.html

我试图进行正则表达式搜索,但是我做得不正确。

regex:https://regexr.com/48s1s

2 个答案:

答案 0 :(得分:2)

我可以想到的最好的工具是structural search in PhpStorm(商业软件)。

主要优势在于,它将这种搜索视为 code ,因此比仅处理 text 的正则表达式或其他搜索模式更具识别性。 / p>

因此,您可以执行类似$function$($pattern$,$argument$,$anotherargument$)的操作,在功能上设置过滤器以匹配多个功能,并设置搜索以捕获图案部分。

答案 1 :(得分:0)

根据这些模式的变化,我建议使用IDE的“查找和替换”,例如,使用AtomVisual Studio Code

  • 在代码库中找到preg_ *函数
  • 将使用的模式提取为常量
  • 在文件中找到模式
  • 用定义的常量替换它

这可能是一些手工工作,但您可以逐步进行