/((\bwall)(\-*)(\d+)_(\d+))/gui
. Но он не работает на PHP: https://vk.com/wall123456_123
preg_match("/((\bwall)(\-*)(\d+)_(\d+))/gui", "https://vk.com/wall123456_123", $matches);
print_r($matches);
g
. Хотите найти всё - используйте preg_match_all.