Dans une chaîne, si on veut supprimer tous les caractères qui ne sont pas définis, on peut utiliser la regexp suivante :
<?php $ip preg_replace('/[^a-f0-9:]/'''$ip);?>

On supprime tous les caractères qui ne sont pas 0 à 9, a à f et le deux-points