Oi Leonardo, tudo bem?
Você não colocou a expressão completa, mas fiz um teste com a sua sugestão apenas para capturar os links dentro dos parênteses (sem incluir os parênteses em si): (https?[^[]]?)
Quando testado na string de conexão que fornecemos com o curso, reconhece apenas http:
, https:
ou httpst
(a partir de https://httpstat.us/404
).
Isso acontece porque /
, além de ser parte do padrão que queremos capturar, também é um meta-char usado em regex e precisa ser "escapado" para ser reconhecido como caractere normal.
Após isso há alguns outros detalhes na versão que usamos no curso, que fazem com que a regex pegue os parênteses de fora, desconsidere alguns caracteres especiais como ?
na primeira parte da URL e também saiba a "hora de parar" de capturar caracteres.
Por exemplo, o grupo (https?:\/\/[^].[^\s]*)
, mais resumido, também funcionaria para os exemplos que usamos no curso, mas escolhemos deixar mais completa :)
Você pode usar o site regex101 para ir testando as partes da regex com a string de exemplo do curso.
Espero ter ajudado!
Bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!