Ver Mensaje Individual
  #5 (permalink)  
Antiguo 17/11/2010, 12:05
Avatar de yournightmare86
yournightmare86
 
Fecha de Ingreso: abril-2006
Ubicación: Madrid
Mensajes: 875
Antigüedad: 18 años
Puntos: 9
Respuesta: Error con str_replace

Claro que lo enseño, como no, pensaba que era que estaba ofuscado y estaba pasando por alto algo elemental. Mira te muestro la siguiente cadena, que es la que trato en la función, así sería sin aplicarle nada:

Código:
[Event &quot;Grand Slam Final Masters&quot;]<br />
[Site &quot;Bilbao ESP&quot;]<br />
[Date &quot;2010.10.14&quot;]<br />
[Round &quot;5&quot;]<br />
[White &quot;Carlsen, Magnus&quot;]<br />
[Black &quot;Shirov, Alexei&quot;]<br />
[Result &quot;1-0&quot;]<br />
[WhiteElo &quot;2826&quot;]<br />
[BlackElo &quot;2749&quot;]<br />
[ECO &quot;C78&quot;]<br />
[EventDate &quot;2010.10.09&quot;]<br />
[WhiteTitle &quot;GM&quot;]<br />
[BlackTitle &quot;GM&quot;]<br />
[Opening &quot;Ruy Lopez&quot;]<br />
[Annotator &quot;IM Gonzalez de la Torre&quot;]<br /><br />
1.e4 e5 2.Nf3 Nc6 3.Bb5 a6 4.Ba4 Nf6 5.O-O b5 6.Bb3 Bc5 {La variante <br />Moller,
 una de las especialidades de Shirov} 7.a4 {Esta variante <br />secundaria está 
 siendo muy popular entre los jugadores de élite} <br />&nbsp;&nbsp; &nbsp;( 
 {La línea principal era} 7.c3 d6 {Y ahora el blanco debe elegir <br />&nbsp;&nbsp;
 &nbsp;entre dos jugadas} 8.a4 <br />&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;( 8.d4 )<br />
 &nbsp;&nbsp; &nbsp;)<br />7...Rb8 8.axb5 axb5 9.c3 d6 10.d4 Bb6 11.h3!? {Parece muy
 lógica, aunque <br />no es muy popular} <br />&nbsp;&nbsp; &nbsp;( 11.Bg5 {Es la más 
 jugada} )<br />&nbsp;&nbsp; &nbsp;( 11.Qd3 {Es otra jugada interesante} )<br />11...O-O
 12.Re1 h6 {Tras una larga reflexión, Shirov se desvía de varias <br />partidas previas
 suyas. El negro gasta un tiempo entero en prevenir la <br />jugada Ag5} <br />&nbsp;&nbsp;
 &nbsp;( 12...Bb7 {Es la jugada que
Quiero quitar los <br /> por un espacio, reemplazar &quot; por " y eliminar todo tipo de &nbsp;

Tengo lo siguiente para hacerlo:
Código:
$data = str_replace("<br />", " ", $data);
$data = str_replace("&quot;", "\"", $data);
$data = strip_tags($data);
$data = str_replace("&nbsp;", "", $data);
Y consigo lo que puse arriba, he abreviado por no saturar:
Código:
[Event "Grand Slam Final Masters"]
[Site "Bilbao ESP"]
[Date "2010.10.14"]
[Round "5"]
[White "Carlsen, Magnus"]
[Black "Shirov, Alexei"] 
[Result "1-0"]
[WhiteElo "2826"]
[BlackElo "2749"]
[ECO "C78"]
[EventDate "2010.10.09"]
[WhiteTitle "GM"]
[BlackTitle "GM"]
[Opening "Ruy Lopez"]
[Annotator "IM Gonzalez de la Torre"] &nbsp;1.e4 e5 2.Nf3 Nc6 3.Bb5 a6 4.Ba4
 Nf6 5.O-O b5 6.Bb3 Bc5 {La variante &nbsp;Moller, una de las especialidades 
 de Shirov} 7.a4 {Esta variante &nbsp;secundaria está siendo muy popular entre
 los jugadores de élite} &nbsp; &nbsp;( {La línea principal era} 7.c3 d6 {Y 
 ahora el blanco debe elegir &nbsp; &nbsp;entre dos jugadas} 
 8.a4 &nbsp; &nbsp; &nbsp;( 8.d4 ) &nbsp; )
Muchas gracias por tu atención, no consigo ver nada, un saludo.