Foros del Web » Programando para Internet » ASP Clásico »

replace

Estas en el tema de replace en el foro de ASP Clásico en Foros del Web. Hola. tengo una web en la que los usuarios pueden subir archivos, y he notado que muchos los suben con el nombre de esta forma: ...
  #1 (permalink)  
Antiguo 23/12/2004, 04:42
Avatar de eeeee  
Fecha de Ingreso: febrero-2004
Ubicación: Almería
Mensajes: 397
Antigüedad: 21 años, 2 meses
Puntos: 0
replace

Hola.
tengo una web en la que los usuarios pueden subir archivos, y he notado que muchos los suben con el nombre de esta forma:ElRioDorado
O sea sin espacios y la primera letra de cada palabra en mayuscula.

Mi pregunta es: ¿como haría un replace para que reeemplace la letra mayúscula con _ mas la letra mayuscula? para que quede asi: El_Rio_Dorado

Sería mas o menos esto:
fileName = replace(fileName,"Ubound","_Ubound")

Gracias
__________________
Eusol .............
aprendiendo de ustedes
________________________

http://www.alicun.com
  #2 (permalink)  
Antiguo 23/12/2004, 07:32
 
Fecha de Ingreso: diciembre-2004
Ubicación: Bs. As. - Argentina
Mensajes: 200
Antigüedad: 20 años, 5 meses
Puntos: 0
una opcion para mi sería
cCadena = "ElRioDorado"
if instr(cCadena, "_")=0 then <<Esto lo hacemos para ver si ya no tiene los "_"
for nI=1 to len(cCadena)
if mid(cCadena,nI,1) = uCase(mid(cCadena,nI,1)) <<¿es mayuscula?
cCadena = left(cCadena, nI) & "_" & mid(cCadena, nI + 1)
end if
next nI
end if

OJO que esto lo armé asi nomas y puede tenre un errocillo u otro. Probalo con cuidado.
Tambien controlá el primer caracter. Por lo que creo, tal comoe sta, debería devolver "_El_Rio_Dorado"

Espero te ayude.
__________________
Javo.
www.thesitewatcher.com
Monitoreo y Auditoría de Sitios de Internet
  #3 (permalink)  
Antiguo 23/12/2004, 07:33
Avatar de HiTek  
Fecha de Ingreso: noviembre-2003
Ubicación: LF, Santiago.Chile
Mensajes: 217
Antigüedad: 21 años, 5 meses
Puntos: 0
dificilisimo creo yo lo que quieres hacer....
tendrias que definir un diccionario de palabras (todas las del lenguaje español, si solo se suben archivos con nombres en español) y recorrer cada palabra de la foto con una palabra del diccionario porque no hay otra manera de encontrar como capitalizar una letra.....en tu caso claro...

si te das cuenta no hay un patrón definido ni constante para poder ejecutar una función, a menos que....

si el patrón es el que se puede ver en este caso en particular de letra Mayuscula de cada palabra

recorrer la cadena o nombre del archivo por cada leta mayúscula reemplace la letra por la misma letra con el underscore "_"

osea algo asi

cadena = replace( cadena , "A" , "_A" )
cadena = replace( cadena , "B" , "_B" )
cadena = replace( cadena , "C" , "_C" )
..................
..................
..................
cadena = replace( cadena , "Z" , "_Z" )


si por algun motivo los usuarios deciden no hacerlo asi esta frito....saludos
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 07:51.