Intellij idea 在IntelliJ中使用Structural Replace更改现场保护级别

Intellij idea 在IntelliJ中使用Structural Replace更改现场保护级别,intellij-idea,structural-search,Intellij Idea,Structural Search,我试图使用structuralreplace将所有私有字段标记为警告,然后建议将它们替换为受保护的字段。(我知道很多人可能不同意我对保护级别的选择,但这是另一个问题) 我有以下资料: class $Class$ { @Modifier("private") $FieldType$ $FieldName$ = $Init$; } 在“编辑变量…”中,我检查了“字段名”中的“此变量是搜索的目标” 这会正确地突出显示标记为私有的变量。但是,更换建议完全错误: 如何修改“结构替换”设置以建议保

我试图使用structuralreplace将所有私有字段标记为警告,然后建议将它们替换为受保护的字段。(我知道很多人可能不同意我对保护级别的选择,但这是另一个问题)

我有以下资料:

class $Class$ { 
 @Modifier("private") $FieldType$ $FieldName$ = $Init$;
}

在“编辑变量…”中,我检查了“字段名”中的“此变量是搜索的目标”

这会正确地突出显示标记为私有的变量。但是,更换建议完全错误:

如何修改“结构替换”设置以建议保护字段

更新

我已将搜索/替换字符串更改为以下内容,效果明显更好:


这允许我将诸如
private int foo=1
之类的字段定义替换为
protected int foo=1
。但是,它不适用于
专用静态最终int-foo=1
,它将其替换为
受保护的int-foo=1
任何建议?

使用分组替换正则表达式可能会更成功


SSR很挑剔-它只适用于实际格式良好的代码段。。。也许它不支持将“static”作为通配符替换?

看起来删除的修饰符是Structural Search&Replace中的一个老错误。我已提交