Pemampat Teks
Padatkan teks dengan membuang ruang kosong dan aksara yang tidak diperlukan
Pilihan Pemadatan
Semua pemprosesan teks dilakukan secara setempat dalam pelayar anda.
Panduan terperinci
Pemadat teks: apa sebenarnya yang dilakukan mod Normal dan Ketat
Cara kedua-dua mod meruntuhkan ruang kosong, sebab output sentiasa satu baris, sebab tiada kotak semak pilihan tambahan, dan bila mengecilkan teks tidak selamat.
Angka utama sepintas lalu
- Mod Normal
- Satu baris, ruang tunggal
- Setiap urutan ruang kosong, termasuk pemisah baris, menjadi satu ruang; hujungnya dipangkas.
- Mod Ketat
- Tiada ruang kosong langsung
- Ruang di antara perkataan turut dibuang, jadi perkataan bercantum.
- Pilihan
- Hanya Normal atau Ketat
- Kotak semak lama Buang baris kosong, Pangkas dan Normalkan jarak tidak pernah mengubah hasil dan telah dibuang.
- Statistik
- Unit kod UTF-16
- Sebelum, selepas dan dijimatkan ialah panjang rentetan JavaScript, jadi 🙂 dikira 2.
Apa yang dilakukan kedua-dua mod
Tekan Padatkan untuk menjalankan mod yang dipilih; hasil tidak dikemas kini secara langsung. Input kosong atau hanya ruang kosong memaparkan ralat.
| Mod | Operasi |
|---|---|
| Normal | Menggantikan setiap urutan ruang kosong (ruang, tab, pemisah baris, ruang tidak putus dan ruang Unicode lain) dengan satu ruang dan membuang ruang kosong di awal dan akhir. Hasil: satu baris. |
| Ketat | Memadam semua aksara ruang kosong. Hasil: satu rentetan tanpa putus. |
"Ruang kosong" bermaksud \s JavaScript: ruang, tab, tab menegak, suap borang, CR, LF, ruang tidak putus U+00A0, U+FEFF, U+2028, U+2029 dan pemisah ruang Unicode seperti ruang ideografik U+3000. Ia tidak termasuk ruang lebar sifar U+200B, jadi aksara tidak kelihatan itu kekal dalam kedua-dua mod.
Contoh yang dikira
Input (51 aksara, dengan tab dan pengakhir baris Windows CRLF):
Hello world
(baris kosong)
second line
indented
| Mod | Output | Selepas | Dijimatkan |
|---|---|---|---|
| Normal | Hello world second line indented |
32 | 19 (37%) |
| Ketat | Helloworldsecondlineindented |
28 | 23 (45%) |
Hasil lain daripada logik halaman: 你好 dan 世界 pada dua baris menjadi 你好 世界 (satu ruang disisipkan); a, kemudian baris berinden 2 dan 4 ruang dengan b dan c, menjadi a b c.
Tiada pilihan tambahan
Halaman hanya mempunyai pilihan mod Normal / Ketat. Versi terdahulu turut memaparkan Buang baris kosong, Buang ruang di awal/akhir baris dan Normalkan jarak, tetapi ia tidak mungkin mengubah hasil: Normal sentiasa menggabungkan semuanya ke satu baris dan Ketat memadam semua ruang kosong. Ia dibuang dan bukannya dibiarkan sebagai kawalan yang tidak berfungsi.
Jika anda mahu mengekalkan struktur baris (contohnya membuang baris kosong tetapi mengekalkan pemisah baris), gunakan Buang pemisah baris; mod "Buang baris kosong" dan "Runtuhkan baris kosong berlebihan" melakukannya dengan tepat.
Salin dan muat turun
Salin meletakkan output pada papan keratan. Muat turun menyimpannya sebagai minimized-text.txt (teks biasa, dicipta dalam pelayar anda). Tiada apa-apa dimuat naik.
Pengiraan
Sebelum, Selepas dan Dijimatkan ialah panjang rentetan JavaScript, yang mengira unit kod UTF-16. Peratusan dibundarkan ke integer terdekat. Emoji seperti 🙂 dikira 2, jadi 🙂 🙂 ialah 5 sebelum dan, dalam mod Ketat, 4 selepas. Untuk kiraan yang menganggap emoji sebagai satu aksara, gunakan pengira perkataan.
Bila tidak boleh mengecilkan
- Kod, data seakan-JSON, YAML, Markdown, Python. Inden dan pemisah baris membawa makna. Lebih buruk, komen baris menelan apa yang mengikutinya:
// notepada satu baris danx = 1pada baris seterusnya menjadi// note x = 1, yang mengomen kod itu. Gunakan pengecil yang memahami bahasa. - Alamat, puisi, jadual, senarai. Struktur baris hilang.
- Teks yang perkataannya dipisahkan ruang. Mod Ketat menjadikannya tidak boleh dibaca dan tidak boleh dipulihkan. Simpan salinan asal.
- Teks Cina, Jepun atau Thai. Skrip ini biasanya tidak memerlukan ruang; Normal mengekalkan satu ruang di mana teks anda mempunyai ruang kosong, dan Ketat membuang semuanya.
Petua: Alat ini menjimatkan aksara, bukan saiz fail dalam bait. Aksara di luar ASCII mengambil 2 hingga 4 bait dalam UTF-8.
Kesilapan biasa
- Mencari kotak semak Buang baris kosong, Pangkas atau Normalkan jarak. Ia telah dibuang kerana tiada kesan.
- Menjangka pemisah baris dikekalkan. Kedua-dua mod membuangnya.
- Menggunakan mod Ketat pada teks yang dimaksudkan untuk dibaca manusia.
- Mengecilkan kemudian memerlukan format asal semula. Tiada buat asal.
Alat berkaitan
Buang pemisah baris mengekalkan struktur sambil membuang baris kosong. Pembersih aksara tersembunyi menyasarkan aksara tidak kelihatan. Pengira perkataan memberi kiraan yang menganggap emoji sebagai satu aksara. Perbezaan teks menunjukkan apa yang berubah.
Soalan Lazim
Apakah itu pemadatan teks?
Pemadatan teks ialah proses membuang ruang kosong, pemisah baris dan aksara tambahan yang tidak diperlukan untuk mengurangkan saiz teks sambil mengekalkan kandungan sebenar. Ia serupa dengan code minification tetapi untuk teks biasa.
Bila saya patut gunakan mod Normal berbanding Ketat?
Gunakan mod Normal apabila anda mahu mengurangkan saiz teks sambil memastikan teks masih mudah dibaca (mengekalkan satu ruang). Gunakan mod Ketat apabila anda memerlukan mampatan maksimum dan kebolehbacaan tidak penting.
Adakah data teks saya dihantar ke mana-mana pelayan?
Tidak, semua pemprosesan teks berlaku sepenuhnya dalam pelayar anda. Data anda tidak pernah meninggalkan peranti anda, menjadikan alat ini selamat sepenuhnya untuk dokumen dan kandungan sensitif.
Sejauh mana saya boleh mengurangkan saiz teks?
Pengurangan bergantung pada teks asal. Teks yang mempunyai banyak ruang tambahan, pemisah baris atau format boleh melihat pengurangan saiz sebanyak 20-50%. Alat ini memaparkan kiraan aksara sebelum dan selepas dengan tepat.
Bolehkah saya membatalkan pemadatan?
Tidak, pemadatan ialah proses sehala dan membuang ruang kosong secara kekal. Sentiasa simpan salinan teks asal anda sebelum memadatkannya jika anda mungkin memerlukan format asal.
Apakah perbezaan antara pemampat teks dan pemampat data?
Pemadatan teks membuang aksara yang tidak diperlukan tetapi masih membolehkan teks dibaca. Mampatan data (seperti ZIP) menggunakan algoritma untuk mengekod data, yang memerlukan proses nyahmampat sebelum dibaca.
Bolehkah saya menggunakan alat ini untuk kod?
Walaupun anda boleh menggunakannya untuk kod, code minifier khusus adalah lebih baik kerana ia memahami sintaks. Alat ini paling sesuai untuk teks biasa, kandungan dan dokumentasi.
Sumber rujukan
- MDN — Regular expression character class escape (\s) — Defines which characters count as whitespace.
- MDN — String length
Panduan ini menerangkan peraturan yang diterbitkan dalam bahasa mudah. Ia bukan nasihat kewangan, undang-undang atau rasmi — peraturan boleh berubah, jadi sahkan dengan agensi yang dipautkan di atas sebelum membuat keputusan.