Bahasa Melayu

Bagaimana untuk mengalih keluar pemisah baris daripada teks

Tampalkan teks ke dalam Text Toolkit. Jika anda mahukan satu blok berterusan, tukar cari-dan-ganti kepada mod Regex, cari \s*\n\s* dan gantikannya dengan satu ruang.

Jika anda ingin mengekalkan pecahan perenggan, gunakan baris Pangkas dahulu, kemudian cari (?<!\n)\n(?!\n) dan gantikan dengan ruang. Corak itu sepadan dengan baris baharu yang tidak mempunyai baris baharu pada kedua-dua belah — iaitu, bungkus pertengahan perenggan — dan meninggalkan baris baharu berganda antara perenggan sahaja.

Mengapa teks tiba dengan pemisah baris keras

Menyalin daripada PDF ialah sumber biasa. PDF tidak mempunyai perenggan — ia mempunyai kedudukan teks pada halaman — jadi salinan itu memasukkan baris baharu di mana-mana sahaja garis visual berakhir. Perenggan yang mengisi enam baris pada halaman tiba sebagai enam baris teks.

E-mel teks biasa ialah sumber biasa yang lain. Mesej keluar yang dibalut keras oleh klien mel lama pada 72 atau 76 aksara dan balasan yang dipetik mengekalkan masa rehat tersebut selama-lamanya.

Ciri yang membezakannya ialah pecahan jatuh pada pertengahan ayat, kira-kira pada lajur yang sama, bukannya pada hujung ayat. Itulah yang menjadikannya boleh ditanggalkan secara mekanikal: pemisah perenggan sebenar dipisahkan oleh baris BLANK dan balut pertengahan perenggan tidak. Segala-galanya di bawah bergantung pada perbezaan itu.

Menyimpan perenggan: kaedah satu corak

Coraknya berbunyi: baris baharu yang tidak didahului oleh baris baharu dan tidak diikuti oleh satu. Bungkus pertengahan perenggan sepadan; setiap baris baharu dalam rehat berganda mempunyai baris baharu pada satu bahagian, jadi kedua-duanya tidak sepadan.

Jika alat menolak corak dengan ralat, pelayar anda tidak menyokong look behind. Dalam kes itu, gunakan penggantian \s*\n\s* yang lebih mudah untuk menyertai segala-galanya, dan perkenalkan semula pecahan perenggan dalam apa sahaja yang anda tampalkan teks ke dalamnya.

  1. Tekan Potong baris. Ini menghilangkan ruang kosong di hadapan dan di belakang daripada setiap baris, jadi pemisah perenggan menjadi betul-betul dua baris baharu dan bukannya baris baharu, ruang sesat dan satu lagi baris baharu.
  2. Tandakan Regex.
  3. Cari (?<!\n)\n(?!\n) dan gantikan dengan satu ruang. Tekan Ganti semua.
  4. Semak kiraan. Ia sepatutnya sepadan secara kasar dengan bilangan baris yang dibalut, dan ia sepatutnya lebih kecil daripada jumlah kiraan baris anda dengan kira-kira bilangan perenggan.

Menggabungkan segala-galanya menjadi satu blok

Untuk petikan, pertanyaan carian atau apa-apa sahaja yang masuk ke dalam satu medan, anda tidak perlu melindungi perenggan sama sekali.

Mod regex, cari \s*\n\s* dan gantikan dengan satu ruang. \s* pada kedua-dua sisi menyerap lekukan dan ruang belakang pada masa yang sama, jadi anda tidak memerlukan pembersihan dua ruang berasingan selepas itu.

Penghujung baris Windows, dan perkara lain yang salah

  • Jika penggantian pada \n melaporkan sifar, atau meninggalkan aksara sesat di belakang, teks mempunyai penghujung baris Windows. Cari \r dan gantikannya dengan apa-apa dahulu; yang menukarkan CRLF kepada LF dan corak di atas kemudian berkelakuan.
  • Perkataan sempang berpecah merentas baris — "antara-" kemudian "nasional" — menjadi "antara negara" selepas menyertai. Cari "- " dan gantikan dengan apa-apa, tetapi baca kiraan dahulu, kerana corak itu juga sepadan dengan sempang yang sah dalam prosa.
  • Ruang berganda boleh bertahan jika garisan berakhir dengan ruang dan anda menggunakan corak lihat belakang. Cari dua ruang, gantikan dengan satu, dan jalankannya dua kali.
  • Teks tanpa baris kosong antara perenggan tidak mempunyai isyarat untuk dilindungi. Tiada corak boleh memulihkan sempadan perenggan yang tidak pernah dikodkan, dan anda perlu memasukkan semula sempadan tersebut dengan tangan.

Dua perkara tentang mod regex alat ini

Corak disusun di dalam pengawal. Corak yang tidak sah memberi anda mesej ralat dan meninggalkan teks anda sama seperti sebelumnya — kurungan terbuka tunggal ialah keadaan perantaraan biasa semasa menaip dan ia tidak sepatutnya memusnahkan kerja anda.

Corak disusun dengan bendera global dan tanpa bendera multiline atau dotall. Oleh itu, penggantian sentiasa digunakan di mana-mana; titik tidak sepadan dengan baris baharu; dan ^ dan $ berlabuh pada keseluruhan teks dan bukannya pada setiap baris. Untuk bertindak setiap baris, padankan baris baharu secara eksplisit, iaitu corak di atas lakukan.

Medan cari dan ganti ialah input satu baris. Anda boleh MATCH baris baharu dengan \n, tetapi anda tidak boleh INSERT satu — \n yang ditaip ke dalam medan gantian disisipkan sebagai garis miring ke belakang diikuti dengan n. Itulah sebabnya kaedah di atas tidak perlu meletakkan baris baru kembali.

Contoh yang berjaya: dua perenggan disalin daripada PDF

Teks yang ditampal mempunyai rehat yang sukar selepas setiap baris bercetak dan satu baris kosong antara dua perenggan. Menggunakan / untuk baris baharu, ia kelihatan seperti ini:

"Jawatankuasa bermesyuarat pada hari Selasa untuk menyemak / cadangan yang dikemukakan pada Mac. Beberapa ahli / membangkitkan kebimbangan mengenai jadual waktu. / / Versi yang disemak akan diedarkan sebelum / mesyuarat seterusnya."

Terdapat lima baris baharu secara keseluruhan: empat balut dan satu pemisah perenggan ditulis sebagai dua baris baharu berturut-turut. Empat daripada lima harus pergi.

  1. Tekan Potong baris.
  2. Tandakan Regex, cari (?<!\n)\n(?!\n), gantikan dengan ruang, Gantikan semua.
  3. Baca kiraan yang dilaporkan.

Keputusan: Alat ini melaporkan 3 penggantian — tiga bungkus pertengahan perenggan — dan hasilnya ialah dua perenggan, setiap satu pada satu baris berterusan, masih dipisahkan oleh garis kosong. Menggunakan \s*\n\s* sebaliknya akan melaporkan 4 dan menggabungkan kedua-dua perenggan menjadi satu, yang merupakan jawapan yang betul untuk petikan dan yang salah di sini.

Buka alat

Bersihkan teks dalam Kit Alat Teks

Cari-dan-ganti literal dan regex dengan sejarah buat asal dan kiraan penggantian selepas setiap langkah. Tiada apa-apa yang anda tampal dihantar ke mana-mana.

Perkara ini tidak meliputi

  • Ini adalah cari-dan-ganti, bukan pengaliran semula. Ia tidak boleh memberitahu balutan pertengahan ayat daripada baris pendek yang sengaja seperti blok alamat, ayat atau senarai bertitik tumpu.
  • Medan gantian tidak boleh menyisipkan baris baharu, jadi sebarang teknik yang perlu mengembalikan pemisah baris perlu diselesaikan di tempat lain.
  • Corak lookbehind memerlukan pelayar yang menyokong pernyataan look behind. Pelayar yang lebih lama melaporkan ralat corak tidak sah dan bukannya gagal secara senyap.
  • Pemprosesan berjalan pada utas utama, jadi dokumen yang sangat besar boleh menjeda antara muka secara ringkas semasa transformasi.
  • Buat asal terhad kepada 50 operasi terakhir.
  • Tiada apa-apa disimpan antara lawatan. Memuat semula halaman akan membuang kerja anda, mengikut reka bentuk.