Título: Reemplazar varios caracteres por numeros
Publicado por: Crazy.sx en 22 Abril 2013, 03:46 am
Buenas noches. Miren, tengo un problema que no estoy pudiendo resolver y no entiendo por qué. Quiero reemplazar muchos caracteres (algunos caracters especiales y otros comunes) por números pero a la hora de hacerlo me salen números muy largos y nada que ver con lo que quiero hacer. He probado hacerlo con menos cantidad y funciona, pero cuando lo hago como el código siguiente el resultado es cualquier cosa. Espero que me digan que estoy haciendo mal ya que me pasé toda la tarde buscando, probando y no pude resolverlo. Así que quisiera que le echen un vistazo y me den una mano. En un momento pensé que es porque hay un límite de uso en cuanto los ".Replace" Gracias. Les muestro el código: Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click TextBox2.Text = Replace(TextBox1.Text, "ñ", ".1").Replace("4", ".2").Replace( _ "?", ".3").Replace("*", ".4").Replace("q", ".5").Replace(")", ".6").Replace("Ç", ".7").Replace("Q", ".8").Replace("I", ".9").Replace( _ "N", ".10").Replace("u", ".11").Replace("[", ".12").Replace("0", ".13").Replace("/", ".14").Replace("¬", ".15").Replace(";", ".16").Replace( _ "1", ".17").Replace("3", ".18").Replace("}", ".19").Replace("h", ".20").Replace("¨", ".21").Replace("8", ".22").Replace("E", ".23").Replace( _ "ª", ".24").Replace("ÿ", ".25").Replace("ú", ".26").Replace("C", ".27").Replace("#", ".28").Replace("é", ".29").Replace("·", ".30").Replace( _ "K", ".31").Replace("O", ".32").Replace("_", ".33").Replace("a", ".34").Replace("l", ".35").Replace("\", ".36").Replace("t", ".37").Replace( _ "v", ".38").Replace("$", ".39").Replace(",", ".40").Replace("J", ".41").Replace("^", ".42").Replace("2", ".43").Replace("R", ".44").Replace("n", ".45").Replace( _ "6", ".46").Replace("!", ".47").Replace("y", ".48").Replace("M", ".49").Replace("o", ".50").Replace("|", ".51").Replace("¿", ".52").Replace("Ñ", ".53").Replace( _ "&", ".54").Replace("A", ".55").Replace("`", ".56").Replace(">", ".57").Replace("b", ".58").Replace("Y", ".59").Replace("p", ".60").Replace("í", ".61").Replace( _ "k", ".62").Replace("{", ".63").Replace("e", ".64").Replace("Z", ".65").Replace("j", ".66").Replace("%", ".67").Replace("H", ".68").Replace("P", ".69").Replace( _ "V", ".70").Replace("º", ".71").Replace("=", ".72").Replace(".", ".73").Replace("G", ".74").Replace("á", ".75").Replace("+", ".76").Replace("U", ".77").Replace( _ "¡", ".78").Replace("F", ".79").Replace("z", ".80").Replace("g", ".81").Replace("@", ".82").Replace("<", ".83").Replace(" ", ".84").Replace("(", ".85").Replace( _ """", ".86").Replace("T", ".87").Replace("9", ".88").Replace("'", ".89").Replace("]", ".90").Replace("W", ".91").Replace("D", ".92").Replace("i", ".93").Replace( _ "c", ".94").Replace("x", ".95").Replace("´", ".96").Replace("S", ".97").Replace("ç", ".98").Replace("5", ".99").Replace("-", ".100").Replace(":", ".101").Replace( _ "s", ".102").Replace("r", ".103").Replace("d", ".104").Replace("B", ".105").Replace("7", ".106").Replace("ó", ".107").Replace("w", ".108").Replace("X", ".109").Replace( _ "L", ".110").Replace("m", ".111").Replace("f", ".112") End Sub
Título: Re: Reemplazar varios caracteres por numeros
Publicado por: Eleкtro en 22 Abril 2013, 04:51 am
OMG! No me gusta criticar los códigos de los demás pero te has pasado!, desde luego esa no es la manera de hacer las cosas bien... Ya que vas a usar todo el alfabeto, te recomiendo que lo primero de todo definas el valor de cada letra y lo guardes en algún sitio...así lo tendrás más ordenado y mayor control si luego quieres cambiar algún número... Prueba de esta manera: Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load TextBox1.Text "abcdef" Alphabet.Add("a", 5) Alphabet.Add("b", 9) Alphabet.Add("c", 4) Alphabet.Add("d", 1) Alphabet.Add("e", 3) Alphabet.Add("f", 0) ' Alphabet.add(... End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click For Each Character As String In TextBox1.Text TextBox1.Text = Replace(TextBox1.Text, Character, Alphabet.Item(Character)) Next End Sub End Class
Saludos!
Título: Re: Reemplazar varios caracteres por numeros
Publicado por: Crazy.sx en 22 Abril 2013, 06:44 am
OMG! No me gusta criticar los códigos de los demás pero te has pasado!, desde luego esa no es la manera de hacer las cosas bien... Ya que vas a usar todo el alfabeto, te recomiendo que lo primero de todo definas el valor de cada letra y lo guardes en algún sitio...así lo tendrás más ordenado y mayor control si luego quieres cambiar algún número... Prueba de esta manera: Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load TextBox1.Text "abcdef" Alphabet.Add("a", 5) Alphabet.Add("b", 9) Alphabet.Add("c", 4) Alphabet.Add("d", 1) Alphabet.Add("e", 3) Alphabet.Add("f", 0) ' Alphabet.add(... End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click For Each Character As String In TextBox1.Text TextBox1.Text = Replace(TextBox1.Text, Character, Alphabet.Item(Character)) Next End Sub End Class
Saludos! Después que lo publiqué me quise tirar de cabeza y con los brazos al costado. Y por como estaba funcionando era obvio de que no estaba nada bien. Al menos mi código sirve de mal ejemplo. :xD ;-) Gracias por tu ayuda, mañana probaré lo que me recomiendas. Saludos.
|