function wpse250308_get_questions() {
global $post;
if ( preg_match_all('/\[question(.*?)\]/', $post->post_content, $questions ) ) {
$questions = array_key_exists( 1 , $questions) ? $questions[1] : array();
// $questions will contain the array of the question shortcodes
//Do your stuff
}
}
$post
isn’t available before wp
. So, you have to hook on it or actions that fires later.