YouTube動画のIDを抽出するための正規表現


方法1: URLからの抽出 YouTubeの動画URLからIDを抽出する方法です。

import re
def extract_youtube_id(url):
    pattern = r"(?<=v=|\/videos\/|embed\/|youtu.be\/|\/v\/|\/e\/|\/u\/\w+\/|\/embed\/|\/v\/|watch\?v=|&v=|\?id=)([a-zA-Z0-9_-]{11})"
    match = re.search(pattern, url)
    if match:
        return match.group(1)
    else:
        return None
# 使用例
url = "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
youtube_id = extract_youtube_id(url)
print(youtube_id)  # 出力: dQw4w9WgXcQ

方法2: 共有リンクからの抽出 YouTubeの共有リンクからIDを抽出する方法です。

import re
def extract_youtube_id(share_link):
    pattern = r"(?<=youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|\&v=|\?id=)([^#\&\?]*)(?=\?|&|\/|$|\#)"
    match = re.search(pattern, share_link)
    if match:
        return match.group(1)
    else:
        return None
# 使用例
share_link = "https://youtu.be/dQw4w9WgXcQ"
youtube_id = extract_youtube_id(share_link)
print(youtube_id)  # 出力: dQw4w9WgXcQ

これらの方法を使用することで、YouTubeの動画IDを正規表現を使って抽出することができます。適切なパターンを使用することで、さまざまな形式のURLや共有リンクから動画IDを抽出することができます。