最近X/MotifからQtに移行したC++コードベースを扱っています。私はブール(Xから)のすべての出現をboolに置き換えるPerlスクリプトを書こうとしています。スクリプトは単純な置き換えを行うだけです。ブールをブールと置き換える正規表現
s/\bBoolean\b/bool/g
いくつかの条件があります。
1)コードにCORBAがあり、\ bがではないを変更する必要があるCORBA :: Booleanと一致します。
2)それは、文字列(すなわち "ブール" として発見された場合は一致していません)
更新:#1については
を、私は#2の後読み
s/(?<!:)\bBoolean\b/bool/g;
を使用私は先読みを使った。
s/(?<!:)\bBoolean\b(?!")/bool/g</pre>
これは私の状況ではおそらく有効ですが、次の改善点はどうですか?
3)文字列の途中で一致しないでください(ありがとうnohat)。
4)コメント内のifと一致しない。 (//または/ ** /)
サイドノート:http://stackoverflow.com/questions/72312/how-should-i-capitalize-perl#72757 – szabgab