https://vk.com/mudakoff
https://vk.com/wall-57846937_19452173
https://vk.com/public57846937
https://vk.com/club57846937
57846937
, а если у сообщества name то через vk.com/dev/groups.getById $link = 'https://vk.com/public57846937';
// Если в поле ссылка из creen_name выводим screen_name, а если id, то выводим id
if(preg_match_all('#(club|public|wall\-)([\-0-9]+)#', $link, $result)) {
preg_match_all('#(club|public|wall\-)([\-0-9]+)#', $link, $result);
echo $result[2][0];
} else {
preg_match_all('/https?:\/\/vk\.com\/(?:id)?(-?\w+)/', $link, $result);
echo $result[1][0];
}