Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá!
Estou querendo listar todos os links de um site e pra isso estou utilizando a expressão...
$texto='<a href="[http://www.teste.com.br">teste
href="[http://www.testex.com.br">testeX';](http://www.testex.com.br)
$pattern='/a href\=\"([a-zA-Z_\.0-9\/\-\! :\@\$]*)\"/i';
preg_match($pattern, $texto, $matches);
echo $matches[1];
Só que ele só exibe o primeiro link que ele encontra...
Como faço para utilizar uma estrutura de repetição para que ele liste todos os links?
Grata
Obrigada!!!
Funcionou!
Só tenho uma outra dúvida... ;)
Agora quero exibir todos os links que contenham a palavra 'noticia'.
Como eu poderia implementar no regex?
'/a href\=\"([a-zA-Z_\.0-9\/\-\! :\@\$]*)\"/i'
Grata
Veja se é desta forma que precisa:
<?php
$texto='<a href="http://www.teste.com.br">teste</a><br><a href="http://www.testex.com.br/noticia/1234">testeX</a><br><a href="http://www.testex.com.br">testeX</a><br><a href="http://www.testex.com.br/titulo-da-noticia">testeX</a><br><a href="http://www.testex.com.br">testeX</a>';
$pattern='/a href\=\"([a-zA-Z_\.0-9\/\-\! :\@\$]*)?noticia([a-zA-Z_\.0-9\/\-\! :\@\$]*)?\"/i';
preg_match_all($pattern, $texto, $matches);
echo '<pre>';
print_r($matches[0]);É isso mesmo!!!
Muitíssimo obrigada :joia: :clap:
preg_match_all