Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/09/2010, 14:52
citosid
 
Fecha de Ingreso: mayo-2008
Mensajes: 9
Antigüedad: 16 años
Puntos: 0
Expresión regular específica

Pues resulta que tengo un problema que ya llevo tratando de resolver con una expresión regular.

Tengo una tabla

<table class="cast"> <tr class="odd"><td class="hs"><a href="/name/nm0000209/" onClick="(new Image()).src='/rg/title-tease/tinyhead/images/b.gif?link=/name/nm0000209/';"><img src="http://ia.media-imdb.com/images/M/MV5BMTk5NTUxMDM1M15BMl5BanBnXkFtZTYwMTI0MDc0._V1._ SY30_SX23_.jpg" width="23" height="32" border="0"></a><br></td><td class="nm"><a href="/name/nm0000209/" onclick="(new Image()).src='/rg/castlist/position-1/images/b.gif?link=/name/nm0000209/';">Tim Robbins</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0001388/">Andy Dufresne</a></td></tr> <tr class="even"><td class="hs"><a href="/name/nm0000151/" onClick="(new Image()).src='/rg/title-tease/tinyhead/images/b.gif?link=/name/nm0000151/';"><img src="http://ia.media-imdb.com/images/M/MV5BMTMxMjUyODg3N15BMl5BanBnXkFtZTcwMTcxNjg5Mg@@._ V1._SY30_SX23_.jpg" width="23" height="32" border="0"></a><br></td><td class="nm"><a href="/name/nm0000151/" onclick="(new Image()).src='/rg/castlist/position-2/images/b.gif?link=/name/nm0000151/';">Morgan Freeman</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0001387/">Ellis Boyd &#x27;Red&#x27; Redding</a></td></tr> <tr class="odd"><td class="hs"><a href="/name/nm0348409/" onClick="(new Image()).src='/rg/title-tease/tinyhead/images/b.gif?link=/name/nm0348409/';"><img src="http://ia.media-imdb.com/images/M/MV5BMjA5MTYwMDUyN15BMl5BanBnXkFtZTcwODgxMjY3Mg@@._ V1._SY30_SX23_.jpg" width="23" height="32" border="0"></a><br></td><td class="nm"><a href="/name/nm0348409/" onclick="(new Image()).src='/rg/castlist/position-3/images/b.gif?link=/name/nm0348409/';">Bob Gunton</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0001391/">Warden Norton</a></td></tr> <tr class="even"><td class="hs"><a href="/name/nm0006669/" onClick="(new Image()).src='/rg/title-tease/tinyhead/images/b.gif?link=/name/nm0006669/';"><img src="http://ia.media-imdb.com/images/M/MV5BMTA1NjU3NDg1MTheQTJeQWpwZ15BbWU2MDI4OTcxMw@@._ V1._SY30_SX23_.jpg" width="23" height="32" border="0"></a><br></td><td class="nm"><a href="/name/nm0006669/" onclick="(new Image()).src='/rg/castlist/position-4/images/b.gif?link=/name/nm0006669/';">William Sadler</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0001390/">Heywood</a></td></tr> <tr class="odd"><td class="hs"><a href="/name/nm0000317/" onClick="(new Image()).src='/rg/title-tease/tinyhead/images/b.gif?link=/name/nm0000317/';"><img src="http://ia.media-imdb.com/images/M/MV5BODIyMjc3NTYxOF5BMl5BanBnXkFtZTcwMjk5NTUxMQ@@._ V1._SY30_SX23_.jpg" width="23" height="32" border="0"></a><br></td><td class="nm"><a href="/name/nm0000317/" onclick="(new Image()).src='/rg/castlist/position-5/images/b.gif?link=/name/nm0000317/';">Clancy Brown</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0001389/">Captain Hadley</a></td></tr> <tr class="even"><td class="hs"><a href="/name/nm0004743/" onClick="(new Image()).src='/rg/title-tease/tinyhead/images/b.gif?link=/name/nm0004743/';"><img src="http://ia.media-imdb.com/images/M/MV5BMjA1MDQxMDU4Nl5BMl5BanBnXkFtZTcwMTA2MTE3Mw@@._ V1._SY30_SX23_.jpg" width="23" height="32" border="0"></a><br></td><td class="nm"><a href="/name/nm0004743/" onclick="(new Image()).src='/rg/castlist/position-6/images/b.gif?link=/name/nm0004743/';">Gil Bellows</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0001392/">Tommy</a></td></tr> <tr class="odd"><td class="hs"><img src="http://i.media-imdb.com/images/b.gif" width="25" height="31" border="0"></td><td class="nm"><a href="/name/nm0001679/" onclick="(new Image()).src='/rg/castlist/position-7/images/b.gif?link=/name/nm0001679/';">Mark Rolston</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0028188/">Bogs Diamond</a></td></tr> <tr class="even"><td class="hs"><img src="http://i.media-imdb.com/images/b.gif" width="25" height="31" border="0"></td><td class="nm"><a href="/name/nm0926235/" onclick="(new Image()).src='/rg/castlist/position-8/images/b.gif?link=/name/nm0926235/';">James Whitmore</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0001393/">Brooks Hatlen</a></td></tr> <tr class="odd"><td class="hs"><img src="http://i.media-imdb.com/images/b.gif" width="25" height="31" border="0"></td><td class="nm"><a href="/name/nm0218810/" onclick="(new Image()).src='/rg/castlist/position-9/images/b.gif?link=/name/nm0218810/';">Jeffrey DeMunn</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0167693/">1946 D.A.</a></td></tr> <tr class="even"><td class="hs"><img src="http://i.media-imdb.com/images/b.gif" width="25" height="31" border="0"></td><td class="nm"><a href="/name/nm0104594/" onclick="(new Image()).src='/rg/castlist/position-10/images/b.gif?link=/name/nm0104594/';">Larry Brandenburg</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0061815/">Skeet</a></td></tr> <tr class="odd"><td class="hs"><img src="http://i.media-imdb.com/images/b.gif" width="25" height="31" border="0"></td><td class="nm"><a href="/name/nm0321358/" onclick="(new Image()).src='/rg/castlist/position-11/images/b.gif?link=/name/nm0321358/';">Neil Giuntoli</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0081814/">Jigger</a></td></tr> <tr class="even"><td class="hs"><img src="http://i.media-imdb.com/images/b.gif" width="25" height="31" border="0"></td><td class="nm"><a href="/name/nm0508742/" onclick="(new Image()).src='/rg/castlist/position-12/images/b.gif?link=/name/nm0508742/';">Brian Libby</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0001394/">Floyd</a></td></tr> <tr class="odd"><td class="hs"><a href="/name/nm0698998/" onClick="(new Image()).src='/rg/title-tease/tinyhead/images/b.gif?link=/name/nm0698998/';"><img src="http://ia.media-imdb.com/images/M/MV5BMjAxNjc4NDg2MF5BMl5BanBnXkFtZTcwNTA1NzE3MQ@@._ V1._SY30_SX23_.jpg" width="23" height="32" border="0"></a><br></td><td class="nm"><a href="/name/nm0698998/" onclick="(new Image()).src='/rg/castlist/position-13/images/b.gif?link=/name/nm0698998/';">David Proval</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0167694/">Snooze</a></td></tr> <tr class="even"><td class="hs"><a href="/name/nm0706555/" onClick="(new Image()).src='/rg/title-tease/tinyhead/images/b.gif?link=/name/nm0706555/';"><img src="http://ia.media-imdb.com/images/M/MV5BMzM3OTMwODc0NF5BMl5BanBnXkFtZTcwMjc4ODE5MQ@@._ V1._SY30_SX23_.jpg" width="23" height="32" border="0"></a><br></td><td class="nm"><a href="/name/nm0706555/" onclick="(new Image()).src='/rg/castlist/position-14/images/b.gif?link=/name/nm0706555/';">Joseph Ragno</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0167695/">Ernie</a></td></tr> <tr class="odd"><td class="hs"><a href="/name/nm0161980/" onClick="(new Image()).src='/rg/title-tease/tinyhead/images/b.gif?link=/name/nm0161980/';"><img src="http://ia.media-imdb.com/images/M/MV5BMjA4NDA4MzkzOV5BMl5BanBnXkFyZXN1bWU@._V1._SY30 _SX23_.jpg" width="23" height="32" border="0"></a><br></td><td class="nm"><a href="/name/nm0161980/" onclick="(new Image()).src='/rg/castlist/position-15/images/b.gif?link=/name/nm0161980/';">Jude Ciccolella</a></td><td class="ddd"> ... </td><td class="char"><a href="/character/ch0110690/">Guard Mert</a></td></tr></table>

Que como pueden ver tiene todos los rows en una sola linea. Si trato de hacer esto:

$actorRegexp = '/<td class\="nm"><a href\="\/name\/\w*\/" onclick\=".*">([a-zA-Z ]*)<\/a><\/td>?/is';
preg_match_all($actorRegexp, $table, $actorsMatchs);

Solo me obtiene el último nombre (en este caso Jude Ciccolella), esto por que al poner el .* en el "onclick" del link también ahí entra toooodo lo que sigue, aúnque ya no sea parte del link. He intentado hacer ahí [\w\/\=\'\?·\. ]* pero aún así no consigo obtener todos los nombres de los actores que están en ese link

Espero que me puedan ayudar