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

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Ayuda! Separadores en un textbox
0 Usuarios y 4 Visitantes están viendo este tema.
Páginas: 1 [2] 3 4 5 Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda! Separadores en un textbox  (Leído 21,291 veces)
birdez

Desconectado Desconectado

Mensajes: 114


Ver Perfil
Re: Ayuda! Separadores en un textbox
« Respuesta #10 en: 30 Mayo 2012, 20:28 pm »

 la movida sq no tengo codigo sobre los separadores :S porque os preguntaba a ver como se podia hacer xq no se me ocurre la forma de escribirlo creo q es algo con la funcion Split pro ns si es asi o no

si quereis os paso todo el codigo que tengo pro ya os digo q de esa parte no tenog nada :(

en principio solo me intereserarian 3 separadosres  que serian el espacio, la coma y el punto


En línea

seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Ayuda! Separadores en un textbox
« Respuesta #11 en: 30 Mayo 2012, 21:42 pm »

hay muchas formas de hacer esto, expresiones regulares como siempre en esto es lo mas facil.

Código
  1. Imports System.Text.RegularExpressions
  2.  
  3. Public Class Form1
  4.  
  5.    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  6.        Dim vCadenaSucia As String = "H,,...?¡¡¡¿¿¿}Çä&#8962;×&#9794;||---***+++@o()/&(@)&^@#><>?:\:';=-+_%$#'l[]a" 'Hola
  7.        Dim vCadenaLimpia As String = Regex.Replace(vCadenaSucia, "[^0-9a-zA-Z ]+", "")
  8.        MsgBox(vCadenaLimpia)
  9.    End Sub
  10. End Class


En línea

birdez

Desconectado Desconectado

Mensajes: 114


Ver Perfil
Re: Ayuda! Separadores en un textbox
« Respuesta #12 en: 30 Mayo 2012, 22:27 pm »

uuuuuuuffff
eso e smuy chungoo!!!

yo lo que busco es algo solamente para comas, espacios, y puntos y q no seas las expresiones regulares esas q nunca las e visto :S

muchas gracias de todas formas pro si sabeis algo mas sencillo.....

gracias!
En línea

seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Ayuda! Separadores en un textbox
« Respuesta #13 en: 30 Mayo 2012, 23:35 pm »

mas facil que eso no hay, tambien tratar de aprender algo nuevo no viene mal tampoco, si queres algo lo mas basico posible, recorre el string y con substring() vas sacando caracter por caracter y lo vas volcando a un string temporal, y si el caracter es una coma, punto o espacio lo ignoras.
« Última modificación: 30 Mayo 2012, 23:39 pm por seba123neo » En línea

birdez

Desconectado Desconectado

Mensajes: 114


Ver Perfil
Re: Ayuda! Separadores en un textbox
« Respuesta #14 en: 30 Mayo 2012, 23:40 pm »

sq el problema es q si el profesor no nos a explicado eso y le entro algo asi seguramente pensara q lo e copiado y q no e hecho yo nada ni me lo e currado ni nada y la verdad q es parte si xq me lo as dicho tu pro el resto de las cosas me las estoy intentando currar jajajaja

intentare acer lo del substring y si es un espacio, coma o punto como lo ignoro?

gracias
En línea

birdez

Desconectado Desconectado

Mensajes: 114


Ver Perfil
Re: Ayuda! Separadores en un textbox
« Respuesta #15 en: 31 Mayo 2012, 09:53 am »

mi codigo es el siguiente lo que pasa q no funciona y no se xq alguien puede echarle un vistazo y ayudarme xfa?

gracias


Codigo:

Código:

Private Sub ButtonTraducir_Click(sender As System.Object, e As System.EventArgs) Handles ButtonTraducir.Click
        If String.IsNullOrWhiteSpace(TextBoxTexto.Text) Then
            MessageBox.Show("Introduce Texto a Traducir", "Información", MessageBoxButtons.OK)
            TextBoxTexto.Focus()
        ElseIf (RadioButtonEs.Checked And ComboBoxIdioma.SelectedIndex = 1) Or (RadioButtonIn.Checked And ComboBoxIdioma.SelectedIndex = 0) Then
            MessageBox.Show("No Se pueden hacer traducciones porque ha seleccionado mismo idioma de entrada y de salida", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
        Else
            If ComboBoxIdioma.SelectedIndex = 1 Then
                TextBoxTraducción.Text = traducir(dicEsp, dicIng, TextBoxTexto.Text)
            End If
        End If
    End Sub


    Private Function traducir(diccionario1 As String(), diccionario2 As String(), frase As String) As String
        Dim palabra As String = ""
        Dim traduccion As String = ""
        Dim posicion As Integer = 0
        Dim letra As String = ""

        While posicion < frase.Length
            letra = frase(posicion)
            While frase(posicion) <> " " Or frase(posicion) <> "," Or frase(posicion) <> "."
                letra = frase(posicion)
                palabra = palabra & letra
            End While
            If palabra <> "" Then
                Dim a As Integer
                a = buscar(palabra, diccionario1)
                If a >= 0 Then
                    traduccion = traduccion & diccionario2(a)
                    traduccion = traduccion & letra
                    palabra = ""
                End If

            End If

            posicion += 1
        End While

        Return traduccion


    End Function



Private Function buscar(palabra As String, diccionario As String()) As Integer
        Dim posicion As Integer = -1

        For i As Integer = 0 To diccionario.Length - 1
            If palabra = diccionario(i) Then
                posicion = i
                Return posicion
            End If
        Next
        Return posicion
    End Function




gracias de nuevo
En línea

Roboto


Desconectado Desconectado

Mensajes: 581



Ver Perfil WWW
Re: Ayuda! Separadores en un textbox
« Respuesta #16 en: 31 Mayo 2012, 10:02 am »

mi codigo es el siguiente lo que pasa q no funciona y no se xq alguien puede echarle un vistazo y ayudarme xfa?

gracias


Codigo:

Código:

Private Sub ButtonTraducir_Click(sender As System.Object, e As System.EventArgs) Handles ButtonTraducir.Click
        If String.IsNullOrWhiteSpace(TextBoxTexto.Text) Then
            MessageBox.Show("Introduce Texto a Traducir", "Información", MessageBoxButtons.OK)
            TextBoxTexto.Focus()
        ElseIf (RadioButtonEs.Checked And ComboBoxIdioma.SelectedIndex = 1) Or (RadioButtonIn.Checked And ComboBoxIdioma.SelectedIndex = 0) Then
            MessageBox.Show("No Se pueden hacer traducciones porque ha seleccionado mismo idioma de entrada y de salida", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
        Else
            If ComboBoxIdioma.SelectedIndex = 1 Then
                TextBoxTraducción.Text = traducir(dicEsp, dicIng, TextBoxTexto.Text)
            End If
        End If
    End Sub


    Private Function traducir(diccionario1 As String(), diccionario2 As String(), frase As String) As String
        Dim palabra As String = ""
        Dim traduccion As String = ""
        Dim posicion As Integer = 0
        Dim letra As String = ""

        While posicion < frase.Length
            letra = frase(posicion)
            While frase(posicion) <> " " Or frase(posicion) <> "," Or frase(posicion) <> "."
                letra = frase(posicion)
                palabra = palabra & letra
            End While
            If palabra <> "" Then
                Dim a As Integer
                a = buscar(palabra, diccionario1)
                If a >= 0 Then
                    traduccion = traduccion & diccionario2(a)
                    traduccion = traduccion & letra
                    palabra = ""
                End If

            End If

            posicion += 1
        End While

        Return traduccion


    End Function



Private Function buscar(palabra As String, diccionario As String()) As Integer
        Dim posicion As Integer = -1

        For i As Integer = 0 To diccionario.Length - 1
            If palabra = diccionario(i) Then
                posicion = i
                Return posicion
            End If
        Next
        Return posicion
    End Function




gracias de nuevo

mira,haz una cosa....

coge el texbox y metele el evento onkeypressed
para k cada vez k metes una letra o un caracter,entre.

y haces una comprobacion del string:
por ejemplo:

metes la letra a y el evento lo checkea.

onkeypressed(sender e......){


atraves del sender,compruebas la key k metio.

if (key=="." || key==" "....){
 pues compruebas y la anulas
}

}


----------------------------------------------------

sorry,volvi a leer y entendi lo k kerias.
lo k tienes k hacer es meter todas las palabras en un array,te recomiendo un arraylist.

tienes k usar la funcion split para ir cortando las palabras,segun " ".;,
« Última modificación: 31 Mayo 2012, 10:06 am por l Galo l » En línea

birdez

Desconectado Desconectado

Mensajes: 114


Ver Perfil
Re: Ayuda! Separadores en un textbox
« Respuesta #17 en: 31 Mayo 2012, 17:01 pm »

con el metodo Split entoences tengo que hacerlo? y si me encuentro un espacio, un punto o una coma? que tengo que hacer?
En línea

$Edu$


Desconectado Desconectado

Mensajes: 1.842



Ver Perfil
Re: Ayuda! Separadores en un textbox
« Respuesta #18 en: 31 Mayo 2012, 18:56 pm »

Lo que te dice Galo es algo que talvez tu profesor no te pide, el dice de traducirlo en tiempo real, asi como el traductor de google.

Tu profesor quiere una funcion que dado un texto, lo traduzca, asique tienes que hacer con Split si.
Ya que traduciras palabras sueltas segun dijiste, no necesitas muchas vueltas, eso si, traducira cualquier cosa a veces xD fijate que el traductor de google no solo traduce palabras sueltas, sino que dependiendo de la forma en que se escribe la frase, pero eso es ya para un traductor mas avanzado, tu solo te pidieron que traduzcas palabras sueltas, hacele caso al profesor xD

Si tienes un codigo ya y no sabes porque no funciona, tienes que empezar a debuggear, poner BreakPoints, ir traceando el programa, si no sabes hacerlo tendrias que aprender porque asi le encuentras los bugs a tus programas o en este caso el porque no funciona bien. Mientras vas debuggeando vas viendo el valor de las variables, asi sabras cuales se traducieron bien sin problemas, etc.

Pero te digo que haria yo.. yo tomaria ese texto, le haria un split solo de espacios, asi guardara de esta forma:

Código:
Erase
una
vez,
en
la
era
de
los
dragones,
una
princesa
malvada.
Esta
princesa
era
una
maldita;
por
eso
lo
de
princesa
malvada
jeje
jeje

Es decir, quedara un array asi, y si te pones a fijar quedan los puntos y las comas y punto y coma. Asi que luego de eso, recorres el array para remplazar esos simbolos por nada.

Código
  1.  
  2. array[i].Replace(",", "")
  3. array[i].Replace(".", "")
  4. array[i].Replace(";", "")
  5. array[i].Replace(" ", "") // yo lo pondria por si algo no salio bien xD
  6.  
  7.  

Asi ahora te quedara:

Código:
Erase
una
vez
en
la
era
de
los
dragones
una
princesa
malvada
Esta
princesa
era
una
maldita
por
eso
lo
de
princesa
malvada
jeje
jeje

Y solamente tendras que hacer tu verificacion de si existe esa palabra en tu lista para poder traducirla.
Yo me organizaria mejor a como te estas creando las funciones, estas creando una funcion para que te devuelva la posicion de la palabra, pero puedes hacer una unica funcion que devuelva la traduccion directamente, dentro de la funcion veras si podes traducirla o no, y si no podes, entonces devolves la misma palabra.
En línea

birdez

Desconectado Desconectado

Mensajes: 114


Ver Perfil
Re: Ayuda! Separadores en un textbox
« Respuesta #19 en: 31 Mayo 2012, 19:18 pm »

No mi traductor traduce palabras sueltas pro en cuando pongo un separador no hace nada xq no es igual q en el array pro el que me pidio el profesor debe traducir frases x eso quiero utilizar el split para q me detecta puntos, comas y espacion para poder acer frases ( el orden de la frase no importa , x ejemplo si pongo coche rojo no tiene q ponerme red car sino car red )


el problema es que en el codigo que tengo me "peta" en un END WHILE que de ahi no pasa y no se porque la verdad

y otra cosa q n se como se hace por ejemplo yo si tengo una frase con espacion y comas si despues en la traduccion como me pone las comas y los puntos en su sitio de antes?

si me puedes poner un ejemplo mejor sq no se xq l metodo split no lo pillo y eso q no tiene q ser chungo eh :S

gracias
En línea

Páginas: 1 [2] 3 4 5 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con TextBox « 1 2 »
Programación Visual Basic
kakinets 12 4,186 Último mensaje 8 Octubre 2005, 19:33 pm
por noob_Setup
ayuda con list y textbox
Programación Visual Basic
dark_soul 2 1,656 Último mensaje 26 Mayo 2006, 04:55 am
por Krnl64
tomar de un textbox, cambiar y pegar en otro textbox
Programación Visual Basic
Nakp 9 5,457 Último mensaje 2 Septiembre 2006, 18:42 pm
por Nakp
Ayuda con textbox
Programación Visual Basic
mariana_87 2 1,796 Último mensaje 19 Marzo 2009, 15:37 pm
por mariana_87
ayuda con textbox
Programación Visual Basic
mariana_87 2 1,844 Último mensaje 23 Mayo 2009, 23:42 pm
por xkiz ™
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines