プロジェクトでいくつかのリファクタリングを実行しています。多くの (ほとんどの場合) 使い捨てのローカル定数を自動的に置き換えたいと考えています。IDE を使用して、検索と置換を行うことができますが、多くのクリックが必要であり、多くの変数を含むファイルがたくさんあります (すべてが特定のフォルダーの下にあり、その下にあるだけなので、フォルダー上のすべてのファイルに適用できます)。次の中途半端な正規表現は、必要な置換を行います。
Search string: (constant variable string )([a-zA-Z_]+)( = )("[A-Za-z\.]+")(;.*)(\2)(?![a-zA-Z_])
Replacement: $1$2$3$4$5$4
これは見苦しく、実用的ではありません。目的の動作しか示していません。つまり、宣言を見つけて、次に出現する変数をその値に置き換えます。一部の定数は使い捨てではないため、これをすべての定数に複数回適用する必要があります。最後に、宣言自体を削除するには、別の検索が必要です。
私は Ubuntu を使用しているので、これには bash が適していると思いますが、私は Linux の初心者であり、この種のタスク用のスクリプトを見つけることができませんでした。これを言語自体でコーディングすることもできますが、確かにもっと時間がかかります。
誰でもこれを行う方法を教えてもらえますか? このケースに適応できるいくつかの例も素晴らしいでしょう。
編集:PHPスクリプトで難しい方法で行われました。