Expressão para detectar url no php

PHP

RegEx

07/03/2017

Opa pessoal,

Estou precisando fazer uma verificação num texto para verificar se nesse texto foi colocado uma url dentro de seu conteúdo.

Para isso fiz uma expressão regular que estou verificando com o preg_match().

Mas pelo visto minha expressão não está pegando o que preciso. Alguém pode ver para mim o que está de errado na regex abaixo?

$pattern = "(http|https|ftp)(:\\\\/\\\\/)(w.)?([a-zA-Z0-9\\\\w\\\\d]){1,}(.)(\\\\w\\\\d){1,3}(.)(\\\\w\\\\d){1,3}";


Valeu galera!
Robson Cavalcante

Robson Cavalcante

Curtidas 0

Respostas

Calebe Menezes

Calebe Menezes

07/03/2017

Olá Robson, tudo legal?

Você quer deixar o protocolo como opcional?

Tipo, só vai precisar tomar um certo cuidado dependendo do que você quiser.

Porque se a url não ficar bem definida no regex, deixando praticamente tudo como opcional, sua expressão regular não vai ser capa de se diferenciar de um arquivo com a sua extensão, como por exemplo "index.php".

Especifique melhor o que você precisa e aí vejo algo aqui que possa te ajudar :)
GOSTEI 0
Robson Cavalcante

Robson Cavalcante

07/03/2017

Hum beleza. Se eu quiser só com protocolo http ou https, como ficaria esse regex?
GOSTEI 0
POSTAR