EDIT:最後に投稿を編集して、使用した正規表現を提供しました
コードの品質を監視するためにソナーを使用することは素晴らしいことですが、欠点としては、くだらないプロジェクトでは、多くの修正が必要になります。私の問題は、checkstyle ( com.puppycrawl.tools.checkstyle.checks.coding.EqualsAvoidNullCheck ) から約 500 の「Equals avoid Null」違反を修正する必要があることです。それを半自動的に修正するための正規表現が1つあれば、それは素晴らしいことです。
この違反の目的は、変更することです
myObject.getMyMember().toString().equals("one string")
に
"one string".equals(myObject.getMyMember().toString())
編集:私はこの方法を使用しましたが、ソースツリー全体でsedを起動せずにチェックする必要がある場合でもうまくいきました
合計行に一致する正規表現
([\(|& \t!])([^\(|& \t!])([a-zA-Z0-9_\[\]\(\)\.]*)\.(equals|equalsIgnoreCase)\(("[^"]*")\)
行を置き換える正規表現
\1\5.\4(\2\3)
500 件の違反を修正するのに 1 日かかりました。まだまだ大変な作業ですが、手作業だったらもっと大変だったでしょう。