Cara kerja pola
| Bagian | Arti |
|---|---|
(?:https?:\/\/)?(?:www\.|m\.)? | Skema opsional dan subdomain www atau m |
youtube\.com\/(?:watch\?v=|embed\/|shorts\/) | URL watch, embed, dan Shorts |
youtu\.be\/ | Atau tautan pendek youtu.be |
([\w-]{11}) | Grup 1: ID video 11 karakter |
(?:[?&#].*)? | Parameter tambahan opsional seperti &t=42 atau &list=… |
Contoh kode
JavaScript
const re = /^(?:https?:\/\/)?(?:www\.|m\.)?(?:youtube\.com\/(?:watch\?v=|embed\/|shorts\/)|youtu\.be\/)([\w-]{11})(?:[?&#].*)?$/;
re.test(value); // true or falsePython
import re
bool(re.fullmatch(r'(?:https?://)?(?:www\.|m\.)?(?:youtube\.com/(?:watch\?v=|embed/|shorts/)|youtu\.be/)([\w-]{11})(?:[?&#].*)?', value))PHP
preg_match('/^(?:https?:\/\/)?(?:www\.|m\.)?(?:youtube\.com\/(?:watch\?v=|embed\/|shorts\/)|youtu\.be\/)([\w-]{11})(?:[?&#].*)?$/', $value) === 1;
Catatan dan batasan
Grup 1 berisi ID video, yang bisa kamu masukkan ke https://www.youtube.com/embed/ID atau URL thumbnail https://i.ytimg.com/vi/ID/hqdefault.jpg. URL watch harus memiliki v= sebagai parameter pertama.
Regex Tester
Ketik pola dan lihat hasil cocok langsung ter-highlight di teks ujimu.