Comment extraire les identifiants de vidéos YouTube à partir de texte à l'aide d'expressions régulières
Problème :
Donné un champ de texte dans lequel les utilisateurs peuvent saisir du texte, la tâche consiste à extraire toutes les URL des vidéos YouTube et leurs correspondances ID.
Solution utilisant des expressions régulières :
Pour extraire les identifiants de vidéos YouTube d'une chaîne donnée, vous pouvez utiliser une expression régulière qui peut correspondre à tous les formats d'URL YouTube possibles. Voici un exemple d'expression régulière qui peut y parvenir :
https?://(?:[0-9A-Z-]+\.)?(?:youtu.be/|youtube(?:-nocookie)?\.com\S*?[^\w\s-])([\w-]{11})(?=[^\w-]|$)(?![?=&+%\w.-]*(?:['"][^<>]*>|</a>))[?=&+%\w.-]*
Répartition de l'expression régulière :
Utilisation :
Vous pouvez utiliser cette expression régulière avec n'importe quel langage de programmation qui prend en charge les expressions régulières. Par exemple, en JavaScript, vous pouvez utiliser le code suivant pour extraire les identifiants de vidéos 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)) : []; }
Notez que le slice(17) supprime le "https://www. youtube.com/watch?v=" préfixe de l'URL YouTube pour extraire l'ID de la vidéo.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!