def tag(text,res):
return re.findall(res, text)
val = '[tag]tag1[/tag] #tag2#tag22 text [tag]tag3,tag4[/tag]'
tag(val,r'\[tag].+?\[/tag]') # должен вернуть ['tag1','tag3,tag4']
tag(val,r'\#.+?\w+') # должен вернуть ['tag2','#tag22']
for match in re.finditer('\[(?P<my_tag>[\w\d]+)\](.*?)\[/(?P=my_tag)\]', val):
if match:
print(match.group(2))
#шаблон
comp = re.compile('([.]+)/([0-9]+)')
#поиск по шаблону
res = comp.findall('asad/121020')
print(res)
#['asad', '121020']