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

Ayuda con formateo de texto con ASP

Estas en el tema de Ayuda con formateo de texto con ASP en el foro de ASP Clásico en Foros del Web. Buenas tardes, tengo un problema, he echo un scrip para que las mis usuarios envien mensajes, y estos se visualizan, pero algunos inadaptados han enviado ...
  #1 (permalink)  
Antiguo 30/05/2004, 16:04
 
Fecha de Ingreso: marzo-2003
Ubicación: Bogotá
Mensajes: 199
Antigüedad: 22 años, 2 meses
Puntos: 0
Ayuda con formateo de texto con ASP

Buenas tardes, tengo un problema, he echo un scrip para que las mis usuarios envien mensajes, y estos se visualizan, pero algunos inadaptados han enviado textos como por ejemplo : yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy...(per o mas largo) y la página se me destruye, sale scroll horizontal larguisimo y quiero evitar eso, como puedo hacer para formatear este texto y saltar una linea o cortar esa palabra, pero sin cortar la última palabra .

Gracias.
  #2 (permalink)  
Antiguo 31/05/2004, 12:16
Avatar de Avelar  
Fecha de Ingreso: noviembre-2002
Ubicación: Ensenada, Baja California, México
Mensajes: 673
Antigüedad: 22 años, 5 meses
Puntos: 1
Necesitas contar el número de letras (función Len())que contiene cada palabra del texto que introducen los usuarios, y en base a la longitud cortar enviando un retorno de carro y salto de línea, o bien un espacio...

Saludos
__________________
Ariel Avelar
  #3 (permalink)  
Antiguo 31/05/2004, 12:37
 
Fecha de Ingreso: marzo-2003
Ubicación: Bogotá
Mensajes: 199
Antigüedad: 22 años, 2 meses
Puntos: 0
Ayuda con conteo de palabras

si, ese len me sirve, pero el lee palabras individuales??? no, el lee el texto completo y podria corta las palabras en donde yo le diga, no habra otra forma?
  #4 (permalink)  
Antiguo 31/05/2004, 12:43
Avatar de Avelar  
Fecha de Ingreso: noviembre-2002
Ubicación: Ensenada, Baja California, México
Mensajes: 673
Antigüedad: 22 años, 5 meses
Puntos: 1
Necesitas dividir el texto en palabras, para eso puedes usar Mid() e InStr(), donde Mid() te servirá para tomar la palabra e InStr() para buscar espacios en blanco. Ya teniendo la palabra usas Len() para verificar la longitud.

Obviamente necesitarás hacerlo con un ciclo y usar una variable temporal para guardar el texto que estás obteniendo para posteriormente remplazar con él el texto original del usuario.

Saludos
__________________
Ariel Avelar
  #5 (permalink)  
Antiguo 31/05/2004, 14:55
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Se me ocurre un script cómo este:


Código:
<%
Cadena = "la siguiente es un palabra larga: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"

' Cantidad de caracteres permitidos
Largo = 25
' Separador utilizado
Separador = "_ "

arrCadena = Split(Cadena, " ")

For i = 0 to UBound(arrCadena)
If Len(arrCadena(i)) > Largo Then

Veces = (Len(arrCadena(i)) \ Largo) + 1

For j = 1 To Veces
Tmp = Mid(arrCadena(i),(j*Largo) - (Largo - 1), Largo)
Tmp2 = Tmp2 & Tmp & Separador
Next

Tmp2 = Left(Tmp2, Len(Tmp2) - Len(Separador))
arrCadena(i) = Tmp2
End if

Next

Response.Write Join(arrCadena)
%>


Para cambiar el largo de las palabras que querés cortar, modificás la variable "Largo". Lo mismo para cambiar el separador de palabras largas (variable "Separador")
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 11:19.