Heim >Backend-Entwicklung >PHP-Tutorial >Wie extrahiere ich YouTube-Video-IDs mithilfe regulärer Ausdrücke aus Text?
So extrahieren Sie YouTube-Video-IDs aus Text mithilfe regulärer Ausdrücke
Problem:
Gegeben Ein Textfeld, in das Benutzer Text eingeben können. Die Aufgabe besteht darin, alle YouTube-Video-URLs und die entsprechenden zu extrahieren IDs.
Lösung mit regulären Ausdrücken:
Um YouTube-Video-IDs aus einer bestimmten Zeichenfolge zu extrahieren, können Sie einen regulären Ausdruck verwenden, der mit allen möglichen YouTube-URL-Formaten übereinstimmen kann. Hier ist ein Beispiel für eine Regex, mit der dies erreicht werden kann:
https?://(?:[0-9A-Z-]+\.)?(?:youtu.be/|youtube(?:-nocookie)?\.com\S*?[^\w\s-])([\w-]{11})(?=[^\w-]|$)(?![?=&+%\w.-]*(?:['"][^<>]*>|</a>))[?=&+%\w.-]*
Regex-Aufschlüsselung:
Verwendung:
Sie können diesen regulären Ausdruck mit jeder Programmiersprache verwenden, die unterstützt reguläre Ausdrücke. In JavaScript können Sie beispielsweise den folgenden Code verwenden, um YouTube-Video-IDs zu extrahieren:
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)) : []; }
Beachten Sie, dass das Slice(17) das „https://www.youtube.com“ entfernt /watch?v="-Präfix aus der YouTube-URL, um die Video-ID zu extrahieren.
Das obige ist der detaillierte Inhalt vonWie extrahiere ich YouTube-Video-IDs mithilfe regulärer Ausdrücke aus Text?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!