【问题标题】:Searching by RegExp (Total Commander / PHP)通过 RegExp 搜索 (Total Commander / PHP)
【发布时间】:2013-06-06 10:27:22
【问题描述】:

我正在使用 Total Commander(文件管理器),它允许通过正则表达式搜索文件内容。

我想在 PHP 文件中搜索不推荐使用的语法,例如 $_SESSION[user] - 所以,我需要 RegExp 来查找所有在方括号内没有引号的标签。

有什么想法吗?

【问题讨论】:

  • 你试过什么?转义有问题,还是不知道怎么匹配字母?
  • 如果user 是一个已定义的常量呢?
  • SESSION\[[^'](\w+)\]

标签: php regex search total-commander


【解决方案1】:

这是假设您没有定义常量:
\$\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* : 匹配空格零次或多次
  • \] :匹配 ]

Online demo

免责声明:这将验证您的变量,例如 $0[aaa] 将被匹配。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多