NetBeansで正規表現でプロジェクト内を置換
問題
配列を使っていたところを、オブジェクトに変えたのですが、
記述をまとめてさくっと切り替えたいんだけど、こういう置換できる?
置換前) $vars['hogehoge'] ↓ 置換後) $vars->hogehoge
答え
「プロジェクト内を置換」で、正規表現を使った置換ができる。
問題の場合だとこんなふうに指定。
含まれるテキスト: \$vars\['(.*?)'\]
置換先: \$vars->$1
※ バックスラッシュは特別な文字をエスケープするため。
※ NetBeansの置換では、キャプチャした文字列は$1, $2, $3…で参照できる。$0は検索文字列にマッチした全体。
こんなふうに置換できる。
置換前
<?php $vars['aaaaa']; $vars['bbbbb']; $vars['ccccc']; $vars['xxxxx']; $v['test'][$vars['yyy']]; ?> <?php echo $vars['abcdefg']; ?> <?php echo $xxx[$vars['abcdefg']]; ?>
置換後
<?php $vars->aaaaa; $vars->bbbbb; $vars->ccccc; $vars->xxxxx; $v['test'][$vars->yyy]; ?> <?php echo $vars->abcdefg; ?> <?php echo $xxx[$vars->abcdefg]; ?>
コメント