使用Regex在文件中查找多次出现的字符串 - PHP

时间:2015-02-07 12:34:41

标签: java php regex string

我是新手使用正则表达式,并想知道是否有人可以指出我正确的方向。

我的问题如下:

我需要模式匹配整个文件以确定代码是否符合规则。 Local Variable Could Be Final. 基本上如果以下代码在文件中,我将需要检查是否再次分配变量。如果没有产生警告,建议改进。

public class Bar {
public void foo () {
    String txtA = "a"; // if txtA will not be assigned again it is better to do this:
    final String txtB = "b";
    }
}

我当然必须为许多其他例子做这个,但我没有被教过正则表达式而且它不是我课程的一部分,如果你可以建议一个模式或提供一个链接来帮助我学习,我会非常感谢。

理想情况下,我想一气呵成,我当然可以生成一组变量出现并再次“扫描”该文件以查看它们是否出现< 2次。但是正则表达式是闪电般快速的,我希望以这样一种方式来解决这个问题,即我可以使用一种方法,我只需传入模式+字符串进行匹配。

我已经开始了,我可以找到多次出现,但如果另外一个变量介于两个实例之间,我的正则表达式将无法接收它们。

它很接近,但我认为几乎不会在每个场景中都有效。

正则表达式:(\s*txtA\s*=\s*.*){2,}

public class Bar {
public void foo () {
    String txtA = "a";       // matches
           txtA =  "ab";     // matches
    String txtB =  "xxx";    // breaks the match
           txtA =  "abc";    // doesn't match, but should.
}

}

如果上述方法是错误的,并且你知道一种更有效的方法,也许是一些PHP库,请建议。

0 个答案:

没有答案