Para testear mi expresion regular utilizo la herramienta online
http://www.rubular.com/
Y en con ella me funciona la expresión regular sin embargo, cuando la ejecuto en el servidor no. He ido depurando hasta encontrar la parte que falla
Código PHP:
Ver original
$parser='|<div class="smallplanet">\s*<a href="(.*?)"\s*.*?\s*.*?\((.*?)\)
Hasta aquí bien, luego continua y esto es lo que no coincide en la web, sin embargo en "rubular.com" si...
Código PHP:
Ver original
.*\s*.*?\s*.*\s*?<span class="planet-name">(.*?)<\/span>\s*<span class="planet-koords">(.*?)<\/span>|is';
Fragmento:
Deberia recopilar la URL, el nombre, las coordenadas
Código:
<div id="myPlanets"> <div id="countColonies"> <p class="textCenter tipsStandard" title="|Número de posibles planetas"> <span>6/6</span> Planetas </p> </div> <div class="smallplanet"> <a href="#" class="planetlink active tipsStandard" title="|<B> [4:177:12]</B><BR>12.800km (130/163)<BR>de -44 °C a -4 °C"> <img class="planetPic" src="img/planets/gas_10_1.gif"/> <span class="planet-name">Planet 51</span> <span class="planet-koords">[4:177:12]</span> </a> </div> <div class="smallplanet"> <a href="index.php?page=overview&session=075b2138c130&cp=33814998" title="|<B> [4:177:8]</B><BR>14.755km (137/217)<BR>de 5 °C a 45 °C" class="planetlink tipsStandard"> <img class="planetPic" src="img/planets/water_6_1.gif"/> <span class="planet-name">Planet Blue</span> <span class="planet-koords">[4:177:8]</span> </a> </div> <div class="smallplanet"> <a href="index.php?page=overview&session=075b2138c130&cp=33823056" title="|<B> [4:196:6]</B><BR>13.879km (128/192)<BR>de 33 °C a 73 °C" class="planetlink tipsStandard"> <img class="planetPic" src="img/planets/normal_3_1.gif"/> <span class="planet-name">Planet Polar</span> <span class="planet-koords">[4:196:6]</span> </a> </div> <div class="smallplanet"> <a href="index.php?page=overview&session=075b2138c130&cp=33829871" title="|<B> [4:179:5]</B><BR>13.808km (125/190)<BR>de 60 °C a 100 °C" class="planetlink tipsStandard"> <img class="planetPic" src="img/planets/normal_5_1.gif"/> <span class="planet-name">Planet Hot</span> <span class="planet-koords">[4:179:5]</span> </a> </div> <div class="smallplanet"> <a href="index.php?page=overview&session=075b2138c130&cp=33883905" title="|<B> [3:350:4]</B><BR>12.548km (113/157)<BR>de 67 °C a 107 °C" class="planetlink tipsStandard"> <img class="planetPic" src="img/planets/dry_5_1.gif"/> <span class="planet-name">Planet Dark</span> <span class="planet-koords">[3:350:4]</span> </a> </div> <div class="smallplanet"> <a href="index.php?page=overview&session=075b2138c130&cp=33909388" title="|<B> [7:290:5]</B><BR>13.629km (102/185)<BR>de 26 °C a 66 °C" class="planetlink tipsStandard"> <img class="planetPic" src="img/planets/dry_6_1.gif"/> <span class="planet-name">Planet Moon</span> <span class="planet-koords">[7:290:5]</span> </a> </div> </div> </div></div>
Resultado deseado, el que ofrece rubular
Result 1
1. #
2. 130/163
3. Planet 51
4. [4:177:12]
Result 2
1. index.php?page=overview&session=075b2138c130&cp=33 814998
2. 137/217
3. Planet Blue
4. [4:177:8]
Result 3
1. index.php?page=overview&session=075b2138c130&cp=33 823056
2. 128/192
3. Planet Polar
4. [4:196:6]
Result 4
1. index.php?page=overview&session=075b2138c130&cp=33 829871
2. 125/190
3. Planet Hot
4. [4:179:5]
Result 5
1. index.php?page=overview&session=075b2138c130&cp=33 883905
2. 113/157
3. Planet Dark
4. [3:350:4]
Result 6
1. index.php?page=overview&session=075b2138c130&cp=33 909388
2. 102/185
3. Planet Moon
4. [7:290:5]
Sabéis por qué falla cuando lo ejecuto? yo creo que es esta parte la que no le gusta...
.*\s*.*?\s*.*\s*?<span class="planet-name">(.*?)<\/span>\s*<span class="planet-koords">(.*?)<\/span>
Podéis ayudarme?
Muchas gracias de antemano!