Comunidad de diseño web y desarrollo en internet online

problema con detalles de PHP [^\\[]*)\\

Citar            
MensajeEscrito el 18 Nov 2006 12:52 am
de este codigo

Código :

$texto = eregi_replace("\\[web\\]([^\\[]*)\\[/web\\]","<a target=\"_blank\" href=\"\\1\">\\1</a>",$texto);

lo que no entiendo es esto:

Código :

\\[web\\]([^\\[]*)\\[/web\\] 

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 18 Nov 2006 01:43 am
Hola,

básicamente lo que hace es buscar la coincidencia en $texto del esquema:

Código :

[web]ladireccionquesea[/web]


para sustituirla por:

Código :

<a target="_blank" href="ladireccionquesea">ladireccionquesea</a>


Vamos, lo que se hace con la etiqueta URL cuando escribimos un post en este foro.

Un saludo.

Por dmvalverde

150 de clabLevel



Genero:Masculino  

Extremadura

firefox
Citar            
MensajeEscrito el 18 Nov 2006 01:47 am
la forma de funcionar la entendi bien pero me interezan los detalles ^ * por que usarlo lo estoy usando pero si no lo entiendo no lo puedo adaptar a mis necesidades

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 18 Nov 2006 02:01 am
:D ok! vayamos por partes:

\\[ --> el caracter [
web --> pos eso, web
\\] --> el caracter ]

([^\\[ ]*) --> cualquier cadena de caracteres (por lo del *) que no contenga el caracter [ (por lo de ^que significa negación cuando va entre corchetes) que será cuando empiece la siguiente parte de la cadena.

\\[/web\\] --> [/web]

Espero que así esté más claro :wink: Cualquier duda... ya sabes.

Un saludo.

Por dmvalverde

150 de clabLevel



Genero:Masculino  

Extremadura

firefox
Citar            
MensajeEscrito el 18 Nov 2006 02:03 am

inyaka escribió:

la forma de funcionar la entendi bien pero me interezan los detalles ^ * por que usarlo lo estoy usando pero si no lo entiendo no lo puedo adaptar a mis necesidades


^ * representa, no contemplar la cadena con los datos *, donde * representa ladireccionquesea
date una vuelta por Tuto de expresiones reguares en php

Por rolv

Claber

2000 de clabLevel

3 tutoriales

 

firefox
Citar            
MensajeEscrito el 19 Nov 2006 05:36 am
No sé de donde sacaste esa expresión regular, pero hay mejores e inclusive tiene error. En vez de * deberia ser +, para que al menos tenga un caracter la url.

Para

Código :

$texto ="[web][/web]";
$texto = eregi_replace("\\[web\\]([^\\[]*)\\[/web\\]","<a target=\"_blank\" href=\"\\1\">\\1</a>",$texto);

texto tiene:

Código :

<a target="_blank" href=""></a>


saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.