- preg_replace_callback: documentation ( source)
<?php
$message = 'What will happen to the #globe if there is more #sunlight more #moonlight but less overall #light. Ah! Funny little #joke. Goodbye fellas!!! #Morning Jokes #For No one.';
$GLOBALS['_loops'] = 0;
$callback = function($match) {
return ++$GLOBALS['_loops'] <= 3 ? $match[0] : ' ';
};
echo "BEFORE : ", $message, "\n";
echo "AFTER : ", preg_replace_callback('~\h*#[a-z]+\h*~i', $callback, $message), "\n";
echo "LOOPS : ", $GLOBALS['_loops'], "\n";