# coding=utf8
# the above tag defines encoding for this document and is for Python 2.x compatibility
import re
regex = r"https:\/\/(youtu.be|www.youtube.com)\/([A-z0-9-_]{11}(\?.*)?$|(watch?.*v=[A-z0-9-_]{11}(\&.*)?$))"
test_str = ("https://www.youtube.com/watch?v=XNADRNnzP8I\n"
"https://www.youtube.com/watch?v=z4plxUWOHxw&t=1s\n"
"https://youtu.be/UW3pBCArsTg\n"
"https://www.youtube.com/watch?v=4HpjbvLeM3Y&t=124s\n"
"https://youtu.be/7Jub0c-qQGM\n"
"https://www.youtube.com/watch?v=vksABX_yYN0&t=1451s\n"
"https://youtu.be/3dHtbo5wwx4\n"
"https://www.youtube.com/watch?v=7QPhMbs2Bd8&t=41s\n"
"https://www.youtube.com/watch?v=YD2_pXJTcAU\n"
"https://youtu.be/9bDSzO8wtCA\n"
"https://www.youtube.com/watch?v=4xfNhseN25E&t=272s\n"
"https://youtu.be/pKUggMsbQt0?123=asd\n"
"https://www.youtube.com/watch?v=Vfw8dIp2Oek&t=693s\n"
"https://www.youtube.com/watch?v=rGYrDPnMCZI\n"
"https://www.youtube.com/watch?v=Sgy0N8YDYPU&t=13s\n"
"https://www.youtube.com/watch?v=KmhBN8CpCcc&t=53s\n"
"https://www.youtube.com/watch?v=dHhyJTSbCbo\n"
"https://www.youtube.com/watch?v=11pqaRiNyiE&t=325s\n"
"https://youtu.be/tYWTrORF7QA\n"
"https://www.youtube.com/watch?v=PQBA2FWST4s&t=7s\n"
"https://www.youtube.com/watch?v=Av8TwjclvV0&t=1459s\n"
"https://www.youtube.com/watch?v=0N0vtsHlAr8&t=732s\n"
"https://www.youtube.com/watch?v=LbLysiDLDYo&t=2347s\n"
"https://www.youtube.com/watch?v=URuA-IQmvUE&t=111s\n"
"https://www.youtube.com/watch?v=5kdCFpeC8as&t=532s\n"
"https://www.youtube.com/watch?v=a5Ck3EZkzMQ\n"
"https://www.youtube.com/watch?v=Gk0Slcw9IiU&t=78s\n"
"https://www.youtube.com/watch?v=bFIhb5xhQRM&t=155s\n"
"https://www.youtube.com/watch?v=37bRMNI4Nv8&t=260s\n"
"https://www.youtube.com/watch?v=gjC20PWBv8A&t=507s\n"
"https://www.youtube.com/watch?v=mGrUtnIVoTU&t=7s\n"
"https://www.youtube.com/watch?v=Tksj76FEWM0&t=208s\n"
"https://www.youtube.com/watch?v=CM0qCSVqz0U&t=551s\n"
"https://www.youtube.com/watch?v=NUkSxLq-jRY&t=69s\n"
"https://www.youtube.com/watch?v=wARglhlugmw&t=52s\n"
"https://www.youtube.com/watch?v=uVHlgd-ipGc&t=18s\n"
"https://www.youtube.com/watch?v=rq0JVTztvXQ&t=4s\n"
"https://www.youtube.com/watch?v=vmE4jQwkbEs&t=420s\n"
"https://www.youtube.com/watch?v=o_HWltTv950&t=146s\n"
"https://www.youtube.com/watch?v=4oroFDP4pA0&t=1057s\n"
"https://youtu.be/fw_RXOylU4c\n"
"https://www.youtube.com/watch?v=MKg2K3E7azs\n"
"https://www.youtube.com/watch?v=CetfYpRaJ9c&t=221s\n"
"https://youtu.be/lkyz58i25Xs\n"
"https://www.youtube.com/watch?v=W5qkaDDVTOA\n"
"https://www.youtube.com/watch?v=jycn7qwMVEI\n"
"https://www.youtube.com/watch?v=cjxe37XrQpI\n"
"https://youtu.be/MIqi2AgkYt8\n"
"https://www.youtube.com/watch?v=-cMOJyhd3BM&t=404s\n"
"https://www.youtube.com/watch?v=yyU7sm4DlzQ\n"
"https://youtu.be/uSJWi7a4fcs\n"
"https://www.youtube.com/watch?v=8ysrYnbEAQw&t=45s\n"
"https://www.youtube.com/watch?v=NrMoafPlvlg\n"
"https://youtu.be/uJVAkOwKs1I\n"
"https://www.youtube.com/watch?v=MqSO4snfEOk&t=98s\n"
"https://www.youtube.com/watch?v=ekedLxblmS0&t=171s\n"
"https://www.youtube.com/watch?v=dZ-6WmB8qyA\n"
"https://youtu.be/20DaWpQqDjM\n"
"https://www.youtube.com/watch?v=bZuaYnRPa2A\n"
"https://www.youtube.com/watch?v=Eve6nu2JOq0\n"
"https://youtu.be/MpzKeLIoLxk\n"
"https://www.youtube.com/watch?v=EJVGXBNNp8M&t=713s\n"
"https://www.youtube.com/watch?v=e1z08cdAdDg\n"
"https://www.youtube.com/watch?v=k3YTIgyKVOU&t=31s\n"
"https://youtu.be/d1bDvS6aSVQ\n"
"https://www.youtube.com/watch?v=owk62eGMGYk\n"
"https://youtu.be/BLEiCSj5zQ0\n"
"https://www.youtube.com/watch?v=g5XdeHy4LEY\n"
"https://youtu.be/FQ6M2sBmOb0\n"
"https://www.youtube.com/watch?v=IS9uOqtvzek\n"
"https://www.youtube.com/watch?v=YStRsFNgD0o\n"
"https://youtu.be/lCyZLHqBjrQ\n"
"https://www.youtube.com/watch?v=WtL1BO8LCoQ\n"
"https://www.youtube.com/watch?v=T_XTYAULs14\n"
"https://www.youtube.com/watch?v=7IP0KEgNwJU\n"
"https://youtu.be/7_IGRl_FwB8\n"
"https://www.youtube.com/watch?v=lamQWEv1wac\n"
"https://www.youtube.com/watch?v=gi1hJfwCO8Q\n"
"https://www.youtube.com/watch?v=xixi27wgudI\n"
"https://www.youtube.com/watch?v=Uq1NcykRak4\n"
"https://www.youtube.com/watch?v=ujYzPaf2aKc\n"
"https://www.youtube.com/watch?v=8NV7kpH9uDE\n"
"https://www.youtube.com/watch?v=lqvv6zvpMLE\n"
"https://www.youtube.com/watch?v=ZYqOUdkfWnA\n"
"https://www.youtube.com/watch?v=dg5fLcelcDI\n"
"https://www.youtube.com/watch?v=keBU3oaEXBg\n"
"https://www.youtube.com/watch?v=rV4tzby21x4\n"
"https://www.youtube.com/watch?v=tBDtUw0mm3o\n"
"https://www.youtube.com/watch?v=vlew8sTDxaA\n"
"https://www.youtube.com/watch?v=eah-0l3oj14\n"
"https://www.youtube.com/watch?v=vavpy-tkxEs\n"
"https://www.youtube.com/watch?v=htmbpUJb9sQ&t=15s\n"
"https://www.youtube.com/watch?v=MPHKXJdKC7Y&t=50s\n"
"https://www.youtube.com/watch?v=4VyoXAm2-ls&t=99s\n"
"https://www.youtube.com/watch?v=O3KK36CTb6Q&t=38s\n"
"https://www.youtube.com/watch?v=ACQtBkfxAws&t=318s\n"
"https://www.youtube.com/watch?v=_6bf6yFf720&t=79s\n"
"https://www.youtube.com/watch?v=Z8NuE57MhIE\n"
"https://www.youtube.com/watch?v=xAITTZqAwTU\n"
"https://www.youtube.com/watch?v=Bz3yBhuBtyw&t=51s\n"
"https://www.youtube.com/watch?v=J7jnUBCoxVk&t=26s\n"
"https://www.youtube.com/watch?v=DKafoAPOVfE\n"
"https://www.youtube.com/watch?v=_Wdq0MNCsTw\n"
"https://www.youtube.com/watch?v=DMJ7AGow2Ms\n"
"https://www.youtube.com/watch?v=17yMzN4Usp8\n"
"https://www.youtube.com/watch?v=a2eobordR8c\n"
"https://www.youtube.com/watch?v=rkouxiiQWko\n"
"https://www.youtube.com/watch?v=LErNVYSmmlg\n"
"https://www.youtube.com/watch?v=tQhT1fQQfCY\n"
"https://www.youtube.com/watch?v=7blDQn69970\n"
"https://www.youtube.com/watch?v=KeOkY7RaZ8E\n"
"https://www.youtube.com/watch?v=80bEG1-v3Hw\n"
"https://www.youtube.com/watch?v=xf726v3XRZ8\n"
"https://www.youtube.com/watch?v=VRhOgs3fFZk\n"
"https://www.youtube.com/watch?v=4VyoXAm2-ls&t=101s\n"
"https://www.youtube.com/watch?v=O3KK36CTb6Q&t=96s\n"
"https://www.youtube.com/watch?v=N6KMLAftrjk&t=16s\n"
"https://www.youtube.com/watch?v=rYSmIh5X6iY&t=20s\n"
"https://www.youtube.com/watch?v=ACQtBkfxAws&t=332s\n"
"https://www.youtube.com/watch?v=_6bf6yFf720&t=79s\n"
"https://www.youtube.com/watch?v=Z8NuE57MhIE\n"
"https://www.youtube.com/watch?v=xAITTZqAwTU\n"
"https://www.youtube.com/watch?v=Bz3yBhuBtyw&t=51s\n"
"https://www.youtube.com/watch?v=J7jnUBCoxVk&t=26s\n"
"https://www.youtube.com/watch?v=SWRasNLVfck\n"
"https://www.youtube.com/watch?v=DKafoAPOVfE\n"
"https://www.youtube.com/watch?v=-cMOJyhd3BM&t=404s\n"
"https://www.youtube.com/watch?v=yyU7sm4DlzQ\n"
"https://www.youtube.com/watch?v=_Wdq0MNCsTw\n"
"https://www.youtube.com/watch?v=lh_FKA1c5TM\n"
"https://www.youtube.com/watch?v=DMJ7AGow2Ms\n"
"https://www.youtube.com/watch?v=17yMzN4Usp8\n"
"https://www.youtube.com/watch?v=TKSU40dCVwQ\n"
"https://www.youtube.com/watch?v=eMAXGmhFupo&t=1s\n"
"https://youtu.be/MpzKeLIoLxk\n"
"https://www.youtube.com/watch?v=EJVGXBNNp8M&t=713s\n"
"https://www.youtube.com/watch?v=pPq6IkJme0s\n"
"https://www.youtube.com/watch?v=1cIzQ2xq3Kw\n"
"https://www.youtube.com/watch?v=heG18vkVJyo&t=32s\n"
"https://www.youtube.com/watch?v=mVAHph7QpJM\n"
"https://www.youtube.com/watch?v=FhQ9xSK0oiY\n"
"https://www.youtube.com/watch?v=Abctipv1Aqk\n"
"https://www.youtube.com/watch?v=9Kf3EZPUOkk\n"
"https://www.youtube.com/watch?v=PasZLvRYMR4\n"
"https://www.youtube.com/watch?v=keBU3oaEXBg\n"
"https://www.youtube.com/watch?v=5I1ms4q94uk\n"
"https://www.youtube.com/watch?v=gwfh4DuS7GQ\n"
"https://www.youtube.com/watch?v=xxRB6ozPgQM\n"
"https://www.youtube.com/watch?v=Zq6QfT3017M")
matches = re.finditer(regex, test_str, re.MULTILINE)
for matchNum, match in enumerate(matches, start=1):
print ("Match {matchNum} was found at {start}-{end}: {match}".format(matchNum = matchNum, start = match.start(), end = match.end(), match = match.group()))
for groupNum in range(0, len(match.groups())):
groupNum = groupNum + 1
print ("Group {groupNum} found at {start}-{end}: {group}".format(groupNum = groupNum, start = match.start(groupNum), end = match.end(groupNum), group = match.group(groupNum)))
# Note: for Python 2.7 compatibility, use ur"" to prefix the regex and u"" to prefix the test string and substitution.
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Python, please visit: https://docs.python.org/3/library/re.html