Función replace con caracteres especiales

26/04/2004 - 18:33 por Gerard Farràs | Informe spam
Hola a todos,

Tengo un problema que no sé como resolver.

Resulta que tengo una ASP que obtiene datos de un fichero DBF.
Éste fichero contiene strings con algunos caracteres "especiales". Por
ejemplo, el caracter "¾" representa "ó".

Por esta razón, creé una función que cambie todos estos caracteres
especiales. Es algo así como:

if (cad <> "") then
n = cad
n = replace(cad,"Ó","à")
n = replace(n,"þ","ç")
n = replace(n,"Þ","è")
n = replace(n,"Ý","í")
n = replace(n,"¾","ó")
n = replace(n,"+","A")
end if

Pués bién, esta función resuelve perfectamente mi problema EXCEPTO
para el signo "+": NO lo cambia nunca. No tengo ni idea de qué puede pasar,
y
que tiene este ASCII de especial pero...

Alguna idea?

Saludos,

Gerard

Preguntas similare

Leer las respuestas

#1 Franco Figun
27/04/2004 - 01:14 | Informe spam
No lo he probado, pero has probado con poner el signo + en caracter HTML?
Este es el igual al + en html: &#43


FF
www.francofigun.com.ar
www.microsofties.com.ar
UIN: 305336919
MSN:

"Gerard Farràs" escribió en el mensaje
news:c6je5u$kao$
Hola a todos,

Tengo un problema que no sé como resolver.

Resulta que tengo una ASP que obtiene datos de un fichero DBF.
Éste fichero contiene strings con algunos caracteres "especiales". Por
ejemplo, el caracter "¾" representa "ó".

Por esta razón, creé una función que cambie todos estos caracteres
especiales. Es algo así como:

if (cad <> "") then
n = cad
n = replace(cad,"Ó","à")
n = replace(n,"þ","ç")
n = replace(n,"Þ","è")
n = replace(n,"Ý","í")
n = replace(n,"¾","ó")
n = replace(n,"+","A")
end if

Pués bién, esta función resuelve perfectamente mi problema EXCEPTO
para el signo "+": NO lo cambia nunca. No tengo ni idea de qué puede


pasar,
y
que tiene este ASCII de especial pero...

Alguna idea?

Saludos,

Gerard


Respuesta Responder a este mensaje
#2 Gerard Farràs
27/04/2004 - 08:41 | Informe spam
Acabo de probarlo y igual. NO funciona.

Gracias y un saludo,

Gerard

"Franco Figun" escribió en el mensaje
news:%23L6$aR%
No lo he probado, pero has probado con poner el signo + en caracter HTML?
Este es el igual al + en html: &#43


FF
www.francofigun.com.ar
www.microsofties.com.ar
UIN: 305336919
MSN:

"Gerard Farràs" escribió en el mensaje
news:c6je5u$kao$
> Hola a todos,
>
> Tengo un problema que no sé como resolver.
>
> Resulta que tengo una ASP que obtiene datos de un fichero DBF.
> Éste fichero contiene strings con algunos caracteres "especiales". Por
> ejemplo, el caracter "¾" representa "ó".
>
> Por esta razón, creé una función que cambie todos estos caracteres
> especiales. Es algo así como:
>
> if (cad <> "") then
> n = cad
> n = replace(cad,"Ó","à")
> n = replace(n,"þ","ç")
> n = replace(n,"Þ","è")
> n = replace(n,"Ý","í")
> n = replace(n,"¾","ó")
> n = replace(n,"+","A")
> end if
>
> Pués bién, esta función resuelve perfectamente mi problema EXCEPTO
> para el signo "+": NO lo cambia nunca. No tengo ni idea de qué puede
pasar,
> y
> que tiene este ASCII de especial pero...
>
> Alguna idea?
>
> Saludos,
>
> Gerard
>
>


Respuesta Responder a este mensaje
#3 Sashka
27/04/2004 - 15:37 | Informe spam
Acabo de probar tu código con ésta cadena...
"simboloÖsimbolo+simboloþsimboloÞsimboloÝsimbolo¾"
Y ha reemplazado todos los caracteres... incluido el +
De modo que se me ocurre que en la cadena no hay lo que esperas o que el
charset especificado te está jugando una mala pasada con iso-8859-1 y
iso-8859-2 lo hace bien...

Sashka
MS MVP Access


"Gerard Farràs" escribió en el mensaje
news:c6kvrt$mqs$
Acabo de probarlo y igual. NO funciona.

Gracias y un saludo,

Gerard

"Franco Figun" escribió en el mensaje
news:%23L6$aR%
> No lo he probado, pero has probado con poner el signo + en caracter


HTML?
> Este es el igual al + en html: &#43
>
>
> FF
> www.francofigun.com.ar
> www.microsofties.com.ar
> UIN: 305336919
> MSN:
>
> "Gerard Farràs" escribió en el mensaje
> news:c6je5u$kao$
> > Hola a todos,
> >
> > Tengo un problema que no sé como resolver.
> >
> > Resulta que tengo una ASP que obtiene datos de un fichero DBF.
> > Éste fichero contiene strings con algunos caracteres "especiales". Por
> > ejemplo, el caracter "¾" representa "ó".
> >
> > Por esta razón, creé una función que cambie todos estos caracteres
> > especiales. Es algo así como:
> >
> > if (cad <> "") then
> > n = cad
> > n = replace(cad,"Ó","à")
> > n = replace(n,"þ","ç")
> > n = replace(n,"Þ","è")
> > n = replace(n,"Ý","í")
> > n = replace(n,"¾","ó")
> > n = replace(n,"+","A")
> > end if
> >
> > Pués bién, esta función resuelve perfectamente mi problema EXCEPTO
> > para el signo "+": NO lo cambia nunca. No tengo ni idea de qué puede
> pasar,
> > y
> > que tiene este ASCII de especial pero...
> >
> > Alguna idea?
> >
> > Saludos,
> >
> > Gerard
> >
> >
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida