Warning: preg_match() [function.preg-match]: Compilation failed: rien à redire à l'offset

je suis en train de changer le preg_match vérifier à partir de l'url de la vérification du nom d'utilisateur de vérifier ce qui est de min/max 2-16chrs, tiret, espace & tiret acceptable. j'obtiens cette erreur

Avertissement: preg_match() [function.preg-match]: Compilation failed: rien à redire au décalage de 14

if(empty($string) || preg_match("#^([\w- ]{2,16}*(?:.[\w- ]{2,16}*)+):?(d+)?/?#i", $string))

ancien code qui a cherché URL

if(empty($string) || preg_match("#^(http|https|ftp)://([A-Z0-9][A-Z0-9_-]*(?:.[A-Z0-9][A-Z0-9_-]*)+):?(d+)?/?#i", $string))

OriginalL'auteur acctman | 2011-04-16