Cara Mengekstrak ID Video YouTube daripada Teks Menggunakan Ungkapan Biasa
Masalah:
Diberikan medan teks di mana pengguna boleh memasukkan teks, tugasnya adalah untuk mengekstrak semua URL video YouTube dan yang sepadan ID.
Penyelesaian menggunakan Ungkapan Biasa:
Untuk mengekstrak ID video YouTube daripada rentetan tertentu, anda boleh menggunakan ungkapan biasa yang boleh memadankan semua format URL YouTube yang mungkin. Berikut ialah contoh regex yang boleh mencapai ini:
https?://(?:[0-9A-Z-]+\.)?(?:youtu.be/|youtube(?:-nocookie)?\.com\S*?[^\w\s-])([\w-]{11})(?=[^\w-]|$)(?![?=&+%\w.-]*(?:['"][^<>]*>|</a>))[?=&+%\w.-]*
Pecahan Regex:
Penggunaan:
Anda boleh menggunakan regex ini dengan mana-mana bahasa pengaturcaraan yang menyokong ungkapan biasa Contohnya, dalam JavaScript, anda boleh menggunakan kod berikut untuk mengekstrak ID video YouTube:
function extractYouTubeIds(text) { const regex = /https?://(?:[0-9A-Z-]+\.)?(?:youtu.be/|youtube(?:-nocookie)?.com\S*?[^\w\s-])([\w-]{11})(?=[^\w-]|$)(?![?=&+%\w.-]*(?:['"][^<>]*>|</a>))[?=&+%\w.-]*/; const matches = text.match(regex); return matches ? matches.map(id => id.slice(17)) : []; }
Perhatikan bahawa slice(17) mengalih keluar "https: //www.youtube.com/watch?v=" awalan daripada URL YouTube untuk mengekstrak ID video.
Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak ID Video YouTube daripada Teks Menggunakan Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!