Di Textpad atau Notepad ++ apakah ada opsi untuk mengekspor semua kecocokan untuk pencarian ekspresi reguler, sebagai satu daftar?
Dalam file teks besar, saya mencari tag (kata-kata terlampir dalam%%), menggunakan ekspresi reguler %\< and \>%
, dan ingin semua kecocokan sebagai daftar tunggal, sehingga saya dapat menghapus duplikat menggunakan Excel dan mendapatkan daftar tag unik.
Jawaban:
Anda dapat mencapai ini dengan menggunakan Backreferences dan fungsi Find and Mark di Notepad ++.
Temukan kecocokan menggunakan regex (katakanlah
%(.*?)%
) dan ganti dengan\n%\1%\n
, setelah ini kita akan memiliki kata target di baris yang berbeda (yaitu tidak ada baris yang memiliki lebih dari satu kata yang cocok)Gunakan Pencarian -> Temukan -> Tandai fungsionalitas untuk menandai setiap baris dengan regex
%(.*?)%
dan ingatlah untuk mencentang ' Bookmark Line ' sebelum menandai tekssumber
Apakah melakukan ini di Notepad ++ persyaratan wajib? Apakah Anda menggunakan Windows atau Unix? Jika Anda menggunakan Windows, Anda dapat melakukannya (sebagian) dari Command Prompt:
findstr
secara samar-samar terinspirasi olehgrep
, jadi new_file ini akan berisi semua baris yang cocok dengan kriteria pencarian Anda; Anda kemudian dapat menggunakan Notepad ++ untuk menghapus teks yang tidak diinginkan (di sebelah kiri% pertama dan di sebelah kanan yang kedua).Dan, tentu saja, jika Anda menggunakan Unix, Anda dapat melakukan tugas yang setara dengannya
sed
.sumber
Ada plugin Notepad ++ yang dapat menyalin ekspresi regex yang cocok ke file baru di tab baru. RegexExtract
Edit masukan Dialog yang disesuaikan dengan pertanyaan
Pada gambar Anda dapat melihat cara mengisi dialog. Saya berasumsi bahwa sebuah kata tidak mengandung spasi, dll., Hanya karakter yang cocok dengan \ w. Terutama:
sumber
Di TextPad, Anda akan membuka
Find
kotak seperti biasa, lalu gunakanMark All
tombol.Dari sana, gunakan
Copy Bookmarked Lines
fungsi. (Edit menu> Salin Lainnya> Baris yang Ditandai.)sumber