【爆速エディタ操作】VS Codeの「マルチカーソル」と「正規表現置換」で単純編集作業を秒で終わらせる技術
「100行以上ある配列のフォーマットを、手作業で1行ずつ書き換えている……」
コードを書く作業の中で、単調な「テキストの整形や置換」ほどモチベーションと時間を奪うものはありません。CSVデータからJSONオブジェクトを作ったり、複数のキー名を一括でキャメルケースに変換したりする作業に、30分以上費やした苦い経験はありませんか?
今回は、Visual Studio Code (VS Code) に標準搭載されている マルチカーソル操作 と 正規表現を使ったグループ置換 をマスターし、単純作業を一瞬で終わらせる実践テクニックを紹介します。
なぜ「スクリプトを書く」より「エディタ置換」なのか?
ちょっとしたテキスト加工が必要になった際、Pythonスクリプトを書くのも一つの手です。しかし、「スクリプトを作成して、実行して、結果を確認して、ファイルを消す」という手順を踏むと、短くても5分〜10分程度はかかってしまいます。
VS Codeの正規表現置換やマルチカーソルを使えば、エディタ上でわずか 10秒〜20秒 で安全に変換を完了させることができます。
作業スピード比較
graph TD
A["大量テキストの加工タスク発生"] --> B{"手法の選択"}
B -- "手動コピペ (初心者)" --> C["1行ずつ修正 (所要時間: 30分)"]
B -- "ワンライナーCP (中級者)" --> D["Pythonスクリプト作成 (所要時間: 8分)"]
B -- "VS Code置換 (上級者)" --> E["マルチカーソル/正規表現 (所要時間: 15秒)"]
C --> F["集中力の低下・タイポの混入"]
D --> G["動作確認のオーバーヘッド"]
E --> H["ストレスゼロで開発へ即復帰"]
実戦1:マルチカーソルを自在に操るショートカット
マルチカーソルとは、エディタ上に複数の入力カーソルを同時に配置し、一括で入力・削除を行う機能です。
覚えるべき神ショートカット4選
| ショートカット (Win/Mac) | 機能・用途 |
|---|---|
Ctrl + Alt + Down/Up (Cmd + Option + Down/Up) | 垂直方向にカーソルを上下へ追加拡張する |
Ctrl + D (Cmd + D) | 選択中の単語と同じ単語を、押すたびに次々と選択追加する |
Ctrl + Shift + L (Cmd + Shift + L) | ドキュメント内の同じ単語すべてを一括選択してカーソルを立てる |
Alt + Click (Option + Click) | 任意の離れた場所へ自由にカーソルを個別に立てる |
活用例:プレーンなリストをJavaScriptの配列へ一瞬で変換
以下のようなプレーンな単語リストがあるとします。
apple
banana
cherry
dragonfruit
- リスト全体を選択し、
Ctrl + Shift + LまたはCtrl + Alt + Downで全行にカーソルを設置。 Homeキーを押して行頭へ移動し、"を入力。Endキーを押して行末へ移動し、",を入力。
わずか3行のキー操作で、一瞬にして以下のコードが完成します。
"apple",
"banana",
"cherry",
"dragonfruit",
実戦2:正規表現置換によるグループ(キャプチャ)変換
さらに高度な構造変更を行う場合、検索・置換窓(Ctrl + H / Cmd + Option + F)の 正規表現モード(Alt + R) を使用します。
活用例:キーバリューの構造入れ替え
以下のような「ID: 名前」形式のログテキストを、「{ id: "ID", name: "名前" }」のJSON形式に変換したい場合。
変換前テキスト:
user_101: Tanaka
user_102: Suzuki
user_103: Takahashi
【検索パターン (Find)】:
^([a-z_0-9]+):\s*([A-Za-z]+)$
【置換パターン (Replace)】:
{ id: "$1", name: "$2" },
ポイントの解説
(...)丸カッコで囲むことで、マッチした部分をキャプチャグループとして保存します。- 置換文字列側の
$1は1番目のカッコ(user_101等)、$2は2番目のカッコ(Tanaka等)に置換されます。 - 置き換えを実行する前に、エディタ上でマッチしている箇所がハイライト表示されるため、誤った置換を防ぐことができます。
実体験:定時退社を手繰り寄せたショートカット習慣
以前、古いシステムから新システムへの移行作業で、約500件のカラム定義をMarkdownテーブルへ手変換するタスクがありました。
チームの先輩が「半日かかるな……」と溜息をついていた作業を、正規表現のキャプチャ置換を使ってわずか 2分 で全件変換して提出したところ、「どうやったの!?」と非常に驚かれた経験があります。
タイピングの速さではなく、「エディタの機能をどれだけ引き出せるか」がエンジニアの生産性を左右します。
まとめ:よく使う置換パターンは手帳にメモしておこう
マルチカーソルと正規表現置換は、一度体で覚えてしまえば生涯使える強力なスキルです。
Ctrl + Dで同じ単語をまとめて変更Alt + Shift + iで選択範囲の全行末にカーソル設置([^,]+)でカンマ区切りのキャプチャ
まずは日常のコード編集の中で、意識して Ctrl + D を使うことから始めてみてください。単純作業の苦痛が快感に変わる瞬間を実感できるはずです!