在我们的代码库中,许多自定义控件都有一个DetachEvents方法,该方法随控件被调用而被调用。经常,其他开发人员错误地将其作为事件处理程序

private void DetachEvents()
{
    myControl.Click += new EventHandler(myControl_Click);
}


当然,应该使用-=而不是+=

我试图为Visual Studios中的“查找和替换”工具提出一个正则表达式,以仅找到包含DetachEvent+=方法,但我不知道该怎么做。如果整天继续寻找DetachEvents()的所有事件,我会整天待在这里

我试过:DetachEvents()[.]+=[.]认为该期间在+=之前和之后都找不到任何东西,但找不到任何东西。

最佳答案

尝试转义+

DetachEvents().*\+=


但这将匹配+=之后的DetatchEvents()的任何实例。假设您在[^}]方法内没有任何其他代码块,则可能要使用.而不是DetachEvents

DetachEvents()[^}]*\+=

关于c# - 正则表达式在方法内部检查“+ =”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20501839/

10-13 08:23