<a href='https://vk.com/userid'>username</a>
string= "[12344554788|John Doe]"
users = string.replace('[','').replace(']','').split('|')
print("<a href='https://vk.com/"+users[0]+"'>"+users[1]+"</a>")
import re
txt = "первый юзер: [12344554788|John Doe] второй юзер: [09876654|Jane Doe] и остальные"
rc = re.compile("\[(.*?)\|(.*?)\]")
result = rc.sub(lambda x: "<a href='https://vk.com/"+x.group(1)+"'>"+x.group(2)+"</a>", txt)
print(result)
первый юзер: <a href='https://vk.com/12344554788'>John Doe</a> второй юзер: <a href='https://vk.com/09876654'>Jane Doe</a> и остальные