Teks & alat harian · Kit Alat Teks
Bagaimana URL dan pengekstrakan e-mel mengetahui di mana alamat berakhir
· Bagaimana ia berfungsi
pengekstrakan teks url alamat e-mel
Melihat kepada dua keputusan sukar dalam mengekstrak pautan dan alamat daripada prosa — di mana URL berhenti dan betapa ketatnya corak e-mel — dan sebab corak pragmatik mengalahkan tatabahasa RFC penuh pada teks sebenar.
Pautan dengan noktah dilekatkan — mengapa pengekstrakan naif mengembalikan https://example.com. dan memutuskan pautan
Nota mesyuarat selalunya meletakkan pautan berguna pada akhir ayat: `Agenda: https://example.com/roadmap.` Carian yang menerima setiap aksara bukan ruang akan termasuk noktah terakhir. Teks yang kelihatan kelihatan munasabah, tetapi nilai yang diekstrak tidak lagi sepadan dengan alamat yang ingin dikongsi atau dilawati oleh penulis.
ToolAcre mula-mula mencari urutan HTTP atau HTTPS, kemudian mengalih keluar tanda noktah, koma, koma bertitik, titik bertindih, tanda seru dan tanda soal. Pembersihan sengaja dilampirkan pada sempadan padanan dan bukannya digunakan merentasi dokumen. Tanda baca di tempat lain dalam URL kekal tersedia apabila corak awal membenarkannya.
Pautan dengan noktah dilampirkan: mengapa pengekstrakan mesti mengecualikan tanda baca di belakang
Corak URL bermula sahaja pada `http://` atau `https://` dan berterusan sehingga ruang kosong atau salah satu daripada beberapa pembatas penutup muncul. Petikan, kurungan sudut, kurungan penutup dan kurungan persegi penutup semuanya menghentikan perlawanan. Peraturan itu membolehkan prosa seperti `(https://example.com/notes)` mengembalikan alamat tanpa kurungan sekelilingnya.
Ini ialah peraturan sempadan praktikal, bukan penghurai umum untuk setiap kemungkinan URI. Tanda kurung pembuka boleh kekal di dalam perlawanan manakala kurungan penutup menamatkannya, jadi alamat yang laluannya sendiri benar-benar mengandungi aksara itu boleh dipendekkan. Pengekstrak mengutamakan sempadan prosa biasa dan meninggalkan kes luar biasa untuk semakan manual.
Sejauh mana ketatnya pemadanan e-mel — perkara yang dibenarkan secara teknikal RFC 5322 dan mengapa pemadanan kesemuanya menghasilkan keputusan yang lebih buruk pada teks sebenar
Pengekstrakan e-mel membuat pertukaran yang serupa. Ia mencari huruf, nombor dan tanda baca peti mel biasa sebelum `@`, kemudian jujukan seperti domain diikuti dengan titik dan sekurang-kurangnya dua huruf. Corak itu menangkap alamat biasa yang tertanam dalam nota tanpa cuba menghasilkan semula setiap pembinaan yang diterima oleh tatabahasa e-mel penuh.
Corak yang lebih sempit berguna kerana pengekstrakan dan pengesahan menjawab soalan yang berbeza. Pengekstrakan mengenal pasti butiran hubungan yang mungkin dalam teks tidak berstruktur; ia tidak membuktikan bahawa peti mel wujud, menerima mel atau kepunyaan orang yang dinamakan. Anggap hasilnya sebagai senarai yang boleh disemak, terutamanya apabila tanda baca atau sintaks peti mel luar biasa muncul berdekatan.
Penyahduaan dan susunan — satu salinan setiap alamat, mengikut urutan penampilan pertama, jadi senarai itu mencerminkan sumber
Untuk URL dan alamat e-mel, ToolAcre mengalih keluar pendua dengan `Set`. JavaScript menetapkan tertib pemasukan kekal, jadi kejadian pertama menentukan tempat item muncul dalam keputusan dan padanan yang sama kemudiannya hilang. Oleh itu, output mengikuti sumber dari atas ke bawah dan bukannya mengabjad kenalan atau pautan tanpa kebenaran.
Kesaksamaan adalah tepat. `https://example.com` dan `https://example.com/` kekal berasingan, begitu juga dengan alamat e-mel yang kes suratnya berbeza. Pengekstrak tidak menormalkan domain, mengalih keluar URL serpihan atau memutuskan bahawa dua destinasi adalah setara. Perubahan tersebut boleh menggabungkan teks yang berbeza secara sengaja, jadi sebarang penormalan selanjutnya tergolong dalam langkah yang disemak berasingan.
Nombor juga — mengeluarkan nilai berangka daripada prosa, dan mengapa pemisah perpuluhan dan ribuan menjadikan 'nombor' kurang jelas daripada yang didengari
Pengekstrakan nombor menerima tanda tolak pilihan, satu atau lebih digit dan bahagian perpuluhan pilihan yang diperkenalkan dengan noktah. Ia boleh menarik `-12`, `48` dan `3.75` daripada prosa. Tidak seperti URL dan pengekstrakan e-mel, ia mengembalikan setiap padanan secara langsung, jadi nilai yang berulang kekal berulang dan mengekalkan kiraan kejadiannya.
Borang berkumpulan dan setempat mendedahkan had peraturan padat itu. `1,250` dikembalikan sebagai `1` dan `250`, manakala `3,5` juga dipecah dan bukannya ditafsirkan sebagai koma perpuluhan. Tanda mata wang, eksponen dan tanda tambah utama bukan sebahagian daripada perlawanan. Baca teks berdekatan sebelum memberikan makna kepada mana-mana nombor yang diekstrak.
Nombor juga: integer dan perpuluhan yang ditandatangani, tanpa menganggap nilai terkumpul sebagai satu nombor
Cuba nota ini: `Email sam@example.com, then review https://example.com/plan. Backup: sam@example.com. Budget -12.5; seats 24. Reference (https://example.com/help).` Ekstrak e-mel mengembalikan satu `sam@example.com`. URL Ekstrak mengembalikan alamat pelan dan bantuan tanpa tanda noktah atau kurungan penutup ayat, dalam susunan itu.
Imbasan manual harus mencari dua penampilan e-mel tetapi satu hasil e-mel yang unik, dua penampilan URL yang berbeza dan dua padanan nombor. Nombor ekstrak mengembalikan `-12.5` dan `24`; digit di dalam domain contoh tidak menambah padanan kerana tiada yang hadir. Semakan ini memisahkan kiraan kejadian daripada senarai kenalan dan pautan yang dinyahduakan.
Perkara ini tidak meliputi — mengesahkan bahawa alamat benar-benar wujud, dan eksotik tetapi sah menangani corak pragmatik yang terlepas
E-mel yang dipadankan hanyalah berbentuk teks seperti corak yang dilaksanakan. ToolAcre tidak menanyakan pelayan mel, menghantar mesej ujian atau memeriksa rekod domain. Oleh itu kesilapan kesilapan yang kelihatan munasabah boleh melepasi pengekstrakan, manakala alamat yang tidak biasa tetapi boleh digunakan boleh terlepas. Sahkan kenalan penting melalui saluran dipercayai yang sesuai sebelum bergantung pada senarai.
Pengekstrakan URL begitu juga tidak meminta halaman, ikut ubah hala atau menguji sama ada destinasi selamat atau tersedia. Ia juga memerlukan awalan HTTP atau HTTPS yang eksplisit, jadi `example.com` kosong tidak dikembalikan. Had ini memastikan pengekstrakan setempat dan boleh diramalkan, tetapi ia menjadikan semakan manusia sebahagian daripada sebarang aliran kerja yang berbangkit.
Bawa pulang — butang pengekstrakan Text Toolkit membuat pertukaran ini secara eksplisit dan memberi anda senarai yang bersih dan dinyahduakan dalam pelayar anda
Butang pengekstrakan menukar blok campuran prosa menjadi padanan yang dipisahkan baris baharu dalam pelayar. URL dan e-mel menggunakan corak pragmatik, memangkas atau berhenti pada sempadan prosa biasa dan mengembalikan nilai unik dalam susunan yang dilihat pertama kali. Nombor menggunakan corak perpuluhan bertanda yang lebih kecil dan mengekalkan pendua, mencerminkan kontrak fungsi yang berbeza dan bukannya satu dasar pengekstrakan universal.
Tampalkan sahaja nota yang anda perlukan, jalankan Ekstrak URL dan Ekstrak e-mel secara berasingan, dan bandingkan setiap senarai dengan sumber sebelum menyalinnya seterusnya. Output bersih menghilangkan pengimbasan berulang, manakala sempadan yang didokumenkan menunjukkan di mana penghakiman masih perlu. Untuk sintaks yang luar biasa, simpan petikan asal di sebelah hasil yang diekstrak semasa semakan.