Foros del Web » Programando para Internet » PHP »

Agarrar todo el texto entre dos "palabras"...

Estas en el tema de Agarrar todo el texto entre dos "palabras"... en el foro de PHP en Foros del Web. Hola, pues bueno, hace tiempo vengo pensando en hacer un panel de control para agregar comentarios un poco mas efectivo al ke estaba acostumbrado, y ...
  #1 (permalink)  
Antiguo 19/12/2003, 23:44
 
Fecha de Ingreso: septiembre-2003
Ubicación: Pirexia
Mensajes: 150
Antigüedad: 20 años, 7 meses
Puntos: 1
Agarrar todo el texto entre dos "palabras"...

Hola, pues bueno, hace tiempo vengo pensando en hacer un panel de control para agregar comentarios un poco mas efectivo al ke estaba acostumbrado, y decidi meterle bbcodes :P, a decir verdad, me fue muy bien al principio, pero luego llegue a un "callejon sin salida". les explico:

en el bbcode ke estoy desarrollando, quise meter algo asi como el bb code de este foro llamado "http://", que como todos sabemos tiene esta forma:


[ URL=http://www.enlace.com ] Link [ /URL ]

entonces, he aki el problema, como agarrar lo ke esta despues de = y antes de ] (ke es el enlace) para poder convertirlo en:

<a href="http://www.enlace.com">Link</a>

?

espero ke me puedan ayudar con esto

gracias
__________________
In a world without walls, who needs Windows?
  #2 (permalink)  
Antiguo 20/12/2003, 10:14
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 8 meses
Puntos: 8
Aqui tienes esta expresion regular.
Es algo basica, pues no valida si lo que esta despues de "URL=" es en realidad una URL valida.
Igualmente creo que te sirve.

$texto = "Este es el [ URL=http://www.enlace.com ] Link [ /URL ] en el tagboard.";
echo ereg_replace('\[URL=(.*)\](.*)\[/URL\]', "<a href=\"\\1\">\\2</a>", $texto);
  #3 (permalink)  
Antiguo 20/12/2003, 12:32
 
Fecha de Ingreso: septiembre-2003
Ubicación: Pirexia
Mensajes: 150
Antigüedad: 20 años, 7 meses
Puntos: 1
muchas gracias, yo validare entonces si lo ke viene despues es una url.

gracias de nuevo ;)
nos vemos.
__________________
In a world without walls, who needs Windows?
  #4 (permalink)  
Antiguo 21/12/2003, 23:47
 
Fecha de Ingreso: septiembre-2003
Ubicación: Pirexia
Mensajes: 150
Antigüedad: 20 años, 7 meses
Puntos: 1
surgio un nuevo problema, usando el codigo ke me diste tube un grabe error, lo ke pasa es lo siguiente:

cuando pruebas el codigo va todo bien, todo funciona normal, pero cuando intentas colcar dos enlaces por medio de [ URL=www.enlace.com ] Link [ /URL ] el resultado se daña... es decir, cuando tratas de hacer esto:

$texto = "este es el primer enlace: [ URL=www.enlace.com ] Link [ /URL ], y este es el segundo: [ URL=www.enlace2.com ] Link2 [ /URL ]..."

echo ereg_replace('\[ URL=(.*)\](.*)\[/URL\]', "<a href=\"\\1\">\\2</a>", $texto);


imprime esto:

este es el primer enlace: Link2

y el Link2 esta redireccionado hacia:

http:/ /www.enlace.com]%20Link%20[ /URL ],%20y%20este%20es%20el%20segundo:%20[ URL=www.enlace2.com

:| ke puedo hacer?
__________________
In a world without walls, who needs Windows?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:24.