PHP имеет встроенную функцию, которая, кажется, делает именно то, что вы хотите.
http://php.net/manual/en/function.strip-tags.php
Он даже имеет функцию белого списка, поэтому он может разрешать некоторые теги.
Для частей #abcd
и @abcd
, я думаю, вам придется использовать preg_replace()
для этого. Я использовал подобную функцию, и она очень хорошо справляется с частью @abcd
:).
$sClickText = preg_replace("/\@([a-zA-Z0-9_])+/",' <a href="#reply" onClick="reply(\'' . "$0" . '\')">' . "$0" . '</a>',$sInputText);