この文字の前のテキスト行を削除するにはどうすればよいですか?

この文字の前のテキスト行を削除するにはどうすればよいですか?

たとえば、次のような小さなテキスト ファイルがあるとします。

[email protected]:948
[email protected]:11111===
[email protected]:123

以前のテキストをすべて削除するにはどうすればよいでしょうか===?

私は Windows 10 を使用しているので、Linux については必要ありません。

答え1

  • Ctrl+H
  • 検索対象:^.*(?====)
  • と置換する:LEAVE EMPTY
  • チェック ラップアラウンド
  • 正規表現をチェック
  • チェックを外す. matches newline
  • Replace all

説明:

^           # beginning of line
  .*        # 0 or more any character but newline
  (?=       # positive lookahead, make sure we have after:
    ===     # 3 equal sign
  )         # end lookahead

与えられた例の結果:

[email protected]:948
===
[email protected]:123

スクリーンキャプチャ(前):

ここに画像の説明を入力してください

スクリーンキャプチャ(後):

ここに画像の説明を入力してください

答え2

次のシーケンスを実行すると、必要な処理が実行されるはずです

  1. CTRL+HReplace検索ウィンドウを開く
  2. Search modeとして選択Regular expressionして選択matches newline
  3. Find whatフィールドに次の正規表現を入力します^.*(?=(\===))(===を任意の文字セットに置き換えます)
  4. Replace withフィールドを空のままにする
  5. カーソルをファイルの最初の文字の前に保ち、Direction下向きのままにします
  6. Replaceボタンをクリックしてください

関連情報