Expressão regular para corresponder URLs com ou sem protocolos
Para URLs que podem ou não incluir o prefixo "http://www" , uma expressão regular pode ser usada para realizar a operação de correspondência. Um padrão RegEx detalhado é fornecido abaixo:
((https?|ftp)://)?([a-z0-9 !*(),;?&=$_.-] (:[a-z0-9 !*(),;?&=$_.-] )?@)?([a-z0-9\-\.]*)\.(([a-z]{2,4})|([0-9]{1,3}\.([0-9]{1,3})\.([0-9]{1,3})))(:[0-9]{2,5})?(/([a-z0-9 $_%-]\.?) )*/?(\?[a-z &\$_.-][a-z0-9;:@&%= /$_.-]*)?(\#[a-z_.-][a-z0-9 $%_.-]*)?
Para utilizar esse padrão para validação de URL, ele pode ser aplicado da seguinte maneira:
if (preg_match("~^$regex$~i", 'www.example.com/etcetc', $m))
var_dump($m);
if (preg_match("~^$regex$~i", 'http://www.example.com/etcetc', $m))
var_dump($m);
Esta solução RegEx oferece uma maneira abrangente de corresponder URLs, independentemente de conterem o prefixo "http://" ou não.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3