2017-06-16 171 views
1

一位同事ReSharper的定制模式遇到了一个问题,他不得不奇异的空白行方法头如果条件后。我们的定制Resharper模板似乎并没有解决这个问题。我知道有删除这些空白行的选项,但这些选项也删除字段之间的空白行等。例如,两套专用字段之间的空白行可以指示不同类别的字段,无论标准如何。 所以我想实现的是:去除空行C#

public void Do() 

{ 
    if (true) 

    { 
    //something 
    } 
} 

成为

public void Do() 
{ 
    if (true) 
    { 
    //something 
    } 

可以这样通过正则表达式检测空白行与自定义模式实现的呢?我从来没有创建自定义的Resharper模式,如果这很重要的话,我仍然处于学徒阶段。 在此先感谢!

+0

也许是值得尝试更换'^ \ S * $'什么也没有和'\ n +'和'\ N' –

+0

但随后一个代码清理会删除所有空行,不是吗? – tweedledum11

+0

看到编辑答案。 –

回答

1

编辑

更深入地了解这一点,似乎有什么你正在尝试做的是不可能的ReSharper的模式之后。这是一个Jetbrains的家伙写道:

“与模式搜索被设计为使用纯代码树,忽略所有空白,评论等” source

但是,这仍然是一个模式创作的好例子。

1。去Resharper => options => code inspection => custom pattern => add pattern

2。这是你的模式应该如何看起来像:

enter image description here

  • 请注意右窗格中 - 你必须添加“声明的占位符”命名$声明$和“标识符占位符”称为$ methodName $。

  • 将模式严重程度从“不显示”更改为“建议”或“警告”,或者您希望看到它。

  • +0

    这会涵盖任何可访问性和返回类型的方法吗?我遵循了每一步,但现在Resharper将我所有的测试方法都标记为错误,即使没有空白行,并且应用模式也不会改变。 – tweedledum11