我正在使用 Total Commander(文件管理器),它允许通过正则表达式搜索文件内容。
我想在 PHP 文件中搜索已弃用的语法,例如 $_SESSION[user]
- 因此,我需要 RegExp 来查找方括号内没有引号的所有标记。
有什么想法吗?
最佳答案
这是假设您没有定义常量:
\$\w+\[\s*(?:[a-zA-Z]+|[a-zA-Z]+(?:"|')|(?:"|')[a- zA-Z]+)\s*\]
说明:
\$
:匹配$
\w+
:匹配[a-zA-Z0-9_]
一次或多次\[
:匹配[
\s*
:匹配空格零次或多次(?:[a-zA-Z]+|[a-zA-Z]+(?:"|')|(?:"|')[a-zA-Z]+)
:匹配"
或'
后跟字母,或仅匹配字母,或字母后跟'
或"
\s*
:匹配空格零次或多次\]
:匹配]
Disclaimer: This will not validate your variables for example
$0[aaa]
would be matched.
关于php - 通过 RegExp 搜索 (Total Commander/PHP),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16959743/