Estoy intentando ejecutar preg_match para extraer el atributo SRC de la primera etiqueta IMG en un artículo (en este caso, almacenado en $ row-> introtexto).Atributo SRC coincidente de la etiqueta IMG usando preg_match
preg_match('/\< *[img][^\>]*[src] *= *[\"\']{0,1}([^\"\']*)/i', $row->introtext, $matches);
En vez de conseguir algo así como
images/stories/otakuzoku1.jpg
de
<img src="images/stories/otakuzoku1.jpg" border="0" alt="Inside Otakuzoku's store" />
me sale solo
0
La expresión regular debe ser correcto, pero no puedo decir por qué parece coincidir con el atributo de frontera te y no el atributo src.
Alternativamente, si ha tenido la paciencia de leer hasta aquí sin saltarse directamente al campo de respuesta y escribir 'utilizar un analizador HTML/XML', se puede recomendar un buen tutorial ya que tengo problemas para encontrarlo uno en todo lo que es aplicable a PHP 4.
PHP 4.4.7
Esto hizo el truco. No es la solución "ideal" para analizar realmente el HTML, sino la única solución que funciona y proporciona el resultado necesario. ¡Gracias! – KyokoHunter
como nota al margen, $ coincidencias [0] contiene la etiqueta IMG completa, y $ coincidencias [1] contiene el URI de origen. –