В качестве варианта подхода замены регулярных выражений, следующее переформатирует пустое пространство, так что за установщиками следует пустая строка, а за получателями - нет.
Найти:
(\s(?:get|is|set)\w+\([^)]*\))\s*\{\s*(?:([^=;}]+;)\s*\}\s*(\R)|([^=;}]+=[^=;}]+;)\s*\}\s*(\R))
Заменить на:
$1 { $2$4 } \R$5
Результат:
int getTotal() { return total; }
void setTotal(int total) { this.total = total; }
List<String> getList() { return list; }
void setList(List<String> list) { this.list = list; }
Map.Entry<String, Integer> getEntry() { return entry; }
void setEntry(Map.Entry<String, Integer> entry) { this.entry = entry; }
Это небольшая эстетическая вещь, но я подумал, что если вы ищете ответ на этот вопрос, то вы, вероятно (почти) такой же анальный, как и я; -)
Я знаю, что мои условия регулярных выражений не такие строгие, как у @Hosam, но я не встречал никаких "ложноположительных" замен.