Visual Studioコードの検索と正規表現での置換


116

Visual Studio Codeの「検索と置換」を使用して、正規表現を使用<h1>content</h1>して#### content内のすべてのインスタンスをドキュメント内に変更したいと思います 。

どうすればそれを達成できますか?


2
それは正規表現の検索および置換である必要がありますか?あなただけ置き換えることができ<h4>#### 、次に置き換える</h4>''
ブレットイースト

回答:


190

それで、あなたの目標は検索して置き換えることですか?
公式のVisual Studioのキーボードshotcuts PDFによると、あなたは押すことができますCtrl + HのWindowsおよびLinuxでは、または⌥⌘F上のMacの検索を可能にし、ツールを交換します:

Visual Studio Codeの検索と置換タブ コードを無効にする場合は<h1>、検索を実行してに置き換えるだけ####です。

ただし、この正規表現を代わりに使用したい場合は、アイコンで有効にして。*、正規表現を使用し、<h1>(.+?)<\/h1>置換して次のようにし#### $1ます。

そして、@ tparteeが示唆したように、詳細を知りたい場合は、Visual Studioのエンジンに関する詳細を以下に示します。


3
Visual Studioは他のすべてのアプリケーションと同様に正規表現を処理します。唯一の違いは、いわゆる正規表現フレーバーです。これは正規表現の「コンパイラー」であり、式をどのように処理するかです。通常、これらの回答のほとんどはかなり似ているため、このような回答では無視されますが、それでも確認したい人のために、回答に追加しました
Mateus

2
質問はVisual Studio Codeに関するものであり、この回答はVisual Studioに関するものです。
ダスティンワイアット

1
または、キーバインディングを変更します。例:IDEAキーバインド(BY marketplace.visualstudio.com/...はCtrl +パスまたはパスで見つけるために交換するためのShiftキー+ R:Ctrlキー+ Shiftキー+ Fあなたが使用することができます)
SL5net

6

初心者のために、私は受け入れられた回答に追加したかったのです。

テキストを検索して変更するには(完全に置き換えるのではなく)、

  1. 「検索」ステップでは、「キャプチャグループ」で正規表現を使用できますla la la (group1) blah blah (group2)。たとえば、括弧を使用して検索できます。

  2. そして、「置換」ステップでは$1$2などを介してキャプチャグループを参照できます。

したがって、たとえば、この場合、関連するテキストを(括弧なしで)見つけることができます<h1>.+?<\/h1>が、括弧を入力<h1>(.+?)<\/h1>すること$1で、置換ステップのように、それらの間のサブマッチを参照できます。涼しい!

ノート

  • 検索ウィジェットで正規表現をオンにするには、.*アイコンをクリックするか、Cmd/Ctrl Alt R

  • $0 マッチ全体を指します

  • 最後に、元の質問では、置換は「ドキュメント内」で行われる必要があると記載されているため、大きなUIを開く「検索」の代わりに、開いているドキュメントにローカルな「検索ウィジェット」(CmdまたはCtrl+ F)を使用できます。プロジェクト内のすべてのファイルを調べます。


0

これが一致するように、[正規表現を使用]で[大文字と小文字の区別]が選択されていることを確認します。[AZ] *大文字と小文字を区別しない場合は、すべての文字に一致します。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.