vim:置換コマンドで検索文字列を使用します。

vim:置換コマンドで検索文字列を使用します。

私はしばしばvim /searchコマンドを使用して正規表現をチェックします(一致するものを確認するだけです)。次に、通常、:%s検索の正規表現を置換する文字列として使用する置換コマンドを使用します。たとえば、まず次のような文字列を探します。

/TP-\(\d\{5\}\)-DD-\d\{3\}

私が望むことを正確に行うので、次のことを置き換えます。

:%s/TP-\(\d\{5\}\)-DD-\d\{3\}/\1/g

しかし、ここで完全正規表現を書き直す必要があります。通常、この正規表現ははるかに長いため、解決策を探しています。

この検索パターンを置換コマンドに直接貼り付けることができる既存のショートカットまたはvimスクリプトはありますか?

私はgvimなしで端末でvimを使います。

答え1

通常、空の正規表現は、以前に入力した正規表現を使用することを意味するため、必要に応じて:%s//\1/g実行する必要があります。

答え2

過去の正規表現検索とExコマンドを表示および変更するもう1つの良い方法は、通常モードでこれらのコマンドを編集することです。このモードでは、コピーと貼り付けを含むすべてのvim機能を使用できます。

  • ?検索:または/検索の代わりq/q?
  • Ex コマンドの場合は、代わりに:試してください。q:
  • このモードを終了するには、以下を使用します。CtrlC

詳細については、以下を参照してください。:help q:

関連情報