配列代入殺すマン IDEの正規表現でPHPの配列への順次代入を一括宣言に書き換える手伝いをする正規表現
そんなタイトル(前半部)の古いメモが整理中のローカルで見つかったのでWebに保存です。
言うほど殺せないのはご愛嬌。
配列代入という呼び方も謎。
\$(?:.*?)\[(.*?)\]\s*=\s*(.*);
$1 => $2,
使い方
たとえば、
PhpStormでこんなコードを見かけたとする。
配列の宣言方法が文化的なお作法になっており、かつコードの編集権限があり自分の美意識に反するとき(どんなときだ
Ctrl + R
で置換機能を呼びだしReplace allすると
ここまで置換されるので、後は$a = [];
の];
を切り取って貼り付けて自動整形にかければ
ここまで持ってこれる。
関連
PHPの配列の作成は初期化と代入のどちらが速いのか - Qiita
書き換える理由付けとして速度を計測しました。
array(.*)
を[.*]
のショートハンド化する正規表現もどこかに書いた気がするが、自動整形で変換できるので需要はない。
今なら静的解析で自動で変換できないものか。
pushや上書きなどに対してセーフティでは無いはずなので、使うなら選択範囲を置換でご安全に。
Author And Source
この問題について(配列代入殺すマン IDEの正規表現でPHPの配列への順次代入を一括宣言に書き換える手伝いをする正規表現), 我々は、より多くの情報をここで見つけました https://qiita.com/khsk/items/1891cb0c1436dead3113著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .