Как извлечь текст между тегом привязки в PHP?

У меня есть одна строка в переменной под названием $message :

 $message = 'posted an event in <a href="http://52.1.47.143/group/186/">TEST PRA</a>'; 

Я хочу только получить текст в теге anchor, т.е. TEST PRA в этом случае с использованием PHP.

Как мне сделать это эффективным способом? Может кто-нибудь, пожалуйста, помогите мне в этом отношении?

Заранее спасибо.

Используйте preg_match_all fororder для глобального сопоставления.

 preg_match_all('~>\K[^<>]*(?=<)~', $str, $match); 

Здесь preg_match будет достаточно. \K отбрасывает ранее сопоставленные символы от печати в финале, поэтому он не будет учитывать символ, сопоставленный с предыдущим символом > . Вы можете использовать положительный lookbehind вместо \K также, как (?<=>) <=> (?<=>) . [^<>]* Отмеченный класс символов, который соответствует любому символу, но не < или > , ноль или более раз. (?=<) , Положительное утверждение lookahead, которое утверждает, что за соответствием должен следовать символ < character.

DEMO

 $str = 'posted an event in <a href="http://52.1.47.143/group/186/">TEST PRA</a>'; preg_match('~>\K[^<>]*(?=<)~', $str, $match); print_r($match[0]); 

Вывод:

 TEST PRA