Я не знаю шаблон для хэшей на YouTube, но просто включите "-" в возможности, поскольку это не считается альфа:
import re
id = re.search('(?<=\?v\=)[\w-]+', 'http://www.youtube.com/watch?v=AIiMa2Fe-ZQ')
print id.group(0)
Я редактировал вышеупомянутое, потому что, как оказалось:
>>> re.search("[\w|-]", "|").group(0)
'|'
"|" в определении символа не действует как специальный символ, но действительно соответствует «|» труба. Мои извинения.