Saya memiliki file log 900mb yang dapat saya buka di SublimeText 3. File ini membengkak dengan garis yang mirip dengan berikut ini.
10/08/2014 23:45:31:828,Information,,,,ExportManager: ,No records to send and/or not connected
Bagaimana cara menyaring semua baris yang berisi No records to send and/or not connected
sublimetext
sublimetext3
energ1ser
sumber
sumber
Jawaban:
Anda dapat melakukan pencarian dan penggantian ekspresi reguler:
Klik Temukan> Ganti.
Pastikan tombol Ekspresi Reguler telah ditekan.
Untuk bidang Find What, masukkan:
Biarkan bidang Ganti Dengan kosong.
Klik Ganti Semua
sumber
^.*No records to send and/or not connected\S.*$
Ctrl+Shift+K
dengan 200.000 baris yang dipilih.Untuk orang yang tidak ingin menulis regex - Anda cukup memilih string pencarian, tekan
ctrl+cmd+g
atau pilih "Cari Cepat Semua" dari menu, yang akan memberi Anda pilihan untuk setiap string yang cocok; dari sanaHome
akan memindahkan setiap kursor pilihan ke awal baris,shift+End
akan memilih setiap baris yang cocok, dandel, del
akan menghapus semuanya.Pengeditan beberapa kursor itu menyenangkan!
sumber
Ctrl+Cmd+G
seperti yang disarankan Leonid untuk memilih semua string tersebut. Setelah ini saya bisa langsung pergi ke "Hapus Garis"Ctrl-Shift-K
dan pembedahan semua garis dengan tali ini dihapus dalam sekejap. Sublime Text benar-benar editor teks terbaik yang pernah saya gunakan.saya tidak bisa mendapatkan regex untuk bekerja jadi saya menggunakan pendekatan Alt-F3 dari jawaban ini:
/superuser/452189/how-can-i-filter-a-file-for-lines-containing-a-string-in-sublime-text-2/598999#598999
sumber
CTRL + L
, yang memperluas pilihan ke seluruh baris, termasuk hentian baris.Ctrl+Cmd+G
untuk multi-kursor pada semua kejadian,Cmd+L
untuk memperluas garis, dan salin / tempel biasaInilah yang saya temukan untuk pengguna windows:
sumber
Tak satu pun dari kode regex yang disarankan di atas berfungsi dalam kasus saya, tetapi ini berhasil:
sumber
\n
atau$
di akhir:.*(text in question).*\n
|
seperti ini:.*(a).*|.*(b).*|.*(c).*
Saya mengalami masalah serupa saat mengedit peta situs
Ini berhasil untuk saya:
sumber
Jawaban di atas adalah cara yang benar, tetapi jika Anda ingin menghilangkan baris bahkan dengan satu string maka lakukan, Temukan -> Ganti -> letakkan
^.*[a-zA-Z]+.*\n
Di bagian temukan dan tetap ganti dengan kosong. Tekan tombol ganti semua ini akan menghapus semua baris bahkan dengan satu string di dalamnya.sumber