elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  problemas con cadena de texto (replace)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: problemas con cadena de texto (replace)  (Leído 2,320 veces)
fede_cp


Desconectado Desconectado

Mensajes: 527


"porque pensar nunca fue entender"


Ver Perfil WWW
problemas con cadena de texto (replace)
« en: 11 Septiembre 2009, 19:20 pm »

bueno gente, la verdad que me quede trabado en una cosa, resulta que estoy haciendo una aplicacion que trabaja con cadenas de texto. y resulta que necesito haer un replace pero solo en una parte de la cadena

osea trabaja asi: ahce un for to, hacia un numero x, los numeros se ordenan separados con comas y despues con un command, de esa cadena reemplazar solo un numero. por ej:

queda en el text:

1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23

y lo que hice fue hacer un replace a por ejemplo 1 ... text1.text = replace(text1.text , 1, "table_name")

pero me va a reemplazar a todos los 1, eso lo solucione agregando replace(text1.text , 1 & "," & 2, "table_name") pero en 21,22 me queda: 2table_name,2

entienden lo que quiero hacer??

estuve todo una semana buscando, pero no encuentro una funcion similar

la verdad que estoy trabado :S


En línea

somos lo que hacemos para cambiar lo que somos

http://elhackerblog.blogspot.com el blog de elhacker.net!!
Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: problemas con cadena de texto (replace)
« Respuesta #1 en: 11 Septiembre 2009, 19:44 pm »

Por poner un ejemplo, es lo que se me ocurre rapidamente:

  • Realizas un split de la cadena
  • Evaluas uno a uno los valores que vas a revisar
  • Si el texto y largo de la cadena buscada coincide con el que queremos reemplazar
  • Reemplazamos y almacenamos en una nueva cadena
  • O bien almacenamos sin cambiar

Código
  1. Function search_and_replace(texto As String, reemp_A As String, reemp_CON As String) As String
  2.  
  3. Dim buffer_aray() As String
  4. Dim i As Integer
  5.  
  6. buffer_aray = Split(texto, ",")
  7. texto = ""
  8.  
  9. For i = 0 To UBound(buffer_aray)
  10. If buffer_aray(i) = reemp_A And Len(buffer_aray(i)) = Len(reemp_A) Then
  11. texto = texto & Replace(buffer_aray(i), reemp_A, reemp_CON, 1) & ","
  12. Else
  13. texto = texto & buffer_aray(i) & ","
  14. End If
  15. Next
  16.  
  17. search_and_replace = Left(texto, Len(texto) - 1)
  18.  
  19. End Function

Saludos :P


P.D: me he dado cuenta de que el código GeSHi se ve mal (las tabulaciones) solo si publico con FF, con IE no ¬¬


« Última modificación: 11 Septiembre 2009, 19:51 pm por Novlucker » En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
Skeletron


Desconectado Desconectado

Mensajes: 1.731


A long way to go


Ver Perfil WWW
Re: problemas con cadena de texto (replace)
« Respuesta #2 en: 11 Septiembre 2009, 19:52 pm »

Amigo.. si lo que quieres es reemplazar es SOLAMENTE un 1 (por ejemplo)
Tienes que buscar a la cadena:    ,1,
Si quieres con un 2.. busca la cadena:    ,2,

Me explico?? o no es lo que buscas?
En línea

fede_cp


Desconectado Desconectado

Mensajes: 527


"porque pensar nunca fue entender"


Ver Perfil WWW
Re: problemas con cadena de texto (replace)
« Respuesta #3 en: 11 Septiembre 2009, 23:54 pm »

muchas gracias Novlucker, cuando tenga un tiempito libre lo pruebo, ya entendi como lo pensaste, cuando lo implemente voy a postear tu code con comentarios al lado para la explciacion :)


saludos
Amigo.. si lo que quieres es reemplazar es SOLAMENTE un 1 (por ejemplo)
Tienes que buscar a la cadena:    ,1,
Si quieres con un 2.. busca la cadena:    ,2,

Me explico?? o no es lo que buscas?

claro funcionaria igual pero tendria que crear una funcion en la que tome al numero le agregue comas y ahi reemplaze, porque la cantidad de numeros es una veriable, no es constante, y si por ejemplo ennumero 80 num, tendria que ir uno por uno o crear una funcion como la de Novlucker  ;D

saludos
En línea

somos lo que hacemos para cambiar lo que somos

http://elhackerblog.blogspot.com el blog de elhacker.net!!
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Nose si usar el replace... alternativa? « 1 2 3 »
Programación Visual Basic
CAR3S? 22 10,638 Último mensaje 8 Febrero 2011, 18:51 pm
por 79137913
replace mysql
Bases de Datos
OssoH 2 3,717 Último mensaje 20 Julio 2011, 22:12 pm
por OssoH
Consulta en SQL; Replace
Desarrollo Web
astinx 2 3,895 Último mensaje 2 Noviembre 2011, 02:02 am
por astinx
Equivalente de funcion REPLACE de vb en C ?
Programación C/C++
User 5 3,749 Último mensaje 25 Julio 2012, 01:07 am
por User
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines