Mayusculas y minusculas

Iniciado por birdez, 30 Mayo 2012, 19:55 PM

0 Miembros y 2 Visitantes están viendo este tema.

birdez

Hola buenas tardes a todos

mi pregunta es la siguiente como puedo hacer para "evitar" las mayusculas o minusculas ?

mi problema es el siguiente estoy programando un traductor el cual contiene dos arrays uno en ingles y el otro en español, estos arrays contienen palabras como por ejemplo Hola, casa, perro Gato, .... y en el otro la traduccion d cada palabra.

Pues bn mi duda es cm podria acer paque que "pasase" de las mayusculas ya q si introduzco la palabra "Hola" me la traduce xq es la misma q la de mi array pro si  introduzco "hola" no me la traduce xq no es igual

alguien puede ayudarme?

gracias!! un saludo!

seba123neo

Código (vbnet) [Seleccionar]
Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim vPalabra1 As String = "Hola"
        Dim vPalabra2 As String = "hola"

        MessageBox.Show(CBool(String.Compare(vPalabra1, vPalabra2, False)))
    End Sub
End Class
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson


birdez

pro el ToLower ami me aparece como una funcion no como un metodo es lo mismo?

o debo acer una funcion y pasarle pa matriz donde estan las palabras?


Pablo Videla

Cita de: birdez en 30 Mayo 2012, 22:17 PM
pro el ToLower ami me aparece como una funcion no como un metodo es lo mismo?

o debo acer una funcion y pasarle pa matriz donde estan las palabras?


al recorrer tu arreglo debes pasar todo a minuscula incluyendo todo lo que compares de esta forma no habrà problemas al comparar.


aca otro ejemplo

http://www.dotnetperls.com/tolower

birdez

yo para recorrer mi array ago esto :

Dim palabra As String = String.Format(TextBox1.Text)

For i As Integer = 0 To matrizesp.GetUpperBound(0)

                   
                    If matrizesp(i) = cad Then
                        TextBox2.Text = matrizing(i)
                        Exit For
                    Else
                        TextBox2.Text = palabra
                    End If
                Next


donde cad = a la palabra correguida por si x ejemplo se introduce perrrro que lo corrija


si quereis os paso todo el copdigo que tengo lo que pasa q tneog varios procedimientos y eso pro si os enterais mejor viendolo todo no tenog nignun problema en pasaroslo

gracias

Pablo Videla

Coloca todo y en codigo geshi por favor, yo realmente no manejo la sintaxis de visual basic pero igual si colocas todo podre intentarlo xD (me da fobia visual basic xD)

birdez

Codigo:




Imports System.Text.RegularExpressions
Imports System.IO

Public Class Form1

    Dim matrizesp As String() = {"Hola", "casa", "perro", "gato"}
    Dim matrizing As String() = {"Hello", "home", "dog", "cat"}
    Dim nuevoarray As String() = {}
    Dim texto As String
    Dim espacio As String = " "
    Dim coma As String
    Dim punto As String



    Dim nuevodialogo As New Dialog1
    Dim nuevoform As New Form2
    Dim nuevoformu As New Form3
    Dim cad As String



    ''' <summary>
    ''' Al cargar el formulario introducimos los items en el combobox
    ''' </summary>
    ''' <param name="sender"></param>
    ''' <param name="e"></param>
    ''' <remarks></remarks>
    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load

        ComboBox1.Items.Add("Seleccione un idioma")
        ComboBox1.Items.Add("Español")
        ComboBox1.Items.Add("Ingles")

        ComboBox1.SelectedIndex = 0




    End Sub




    Private Sub BotonTraducir_Click(sender As System.Object, e As System.EventArgs) Handles BotonTraducir.Click

        Dim palabra As String = String.Format(TextBox1.Text)
     

       


        If String.IsNullOrEmpty(TextBox1.Text) Then
            MessageBox.Show("Debe introducir un texto para traducirlo")
            TextBox1.Focus()






        ElseIf ComboBox1.SelectedItem = "Seleccione un idioma" Then

            MessageBox.Show("Debe elegir un idioma original")
        ElseIf ComboBox1.SelectedItem = "Español" Then

            texto = TextBox1.Text
            corregir(texto)
            If RadioButtonIng.Checked = True Then
                For i As Integer = 0 To matrizesp.GetUpperBound(0)

                   
                    If matrizesp(i) = cad Then
                        TextBox2.Text = matrizing(i)
                        Exit For
                    Else
                        TextBox2.Text = palabra
                    End If
                Next
            Else
                MessageBox.Show("Debe elegir un idioma para traducir")
            End If
        ElseIf ComboBox1.SelectedItem = "Ingles" Then

            texto = TextBox1.Text
            corregir(texto)
            If RadioButtonEsp.Checked = True Then

                For i As Integer = 0 To matrizing.GetUpperBound(0)
                    If matrizing(i) = cad Then
                        TextBox2.Text = matrizesp(i)
                        Exit For
                    Else
                        TextBox2.Text = palabra
                    End If
                Next
            Else

                MessageBox.Show("Debe elegir un idioma para traducir")
            End If
        End If

       



    End Sub

    Private Sub BotonSalir_Click(sender As System.Object, e As System.EventArgs) Handles BotonSalir.Click
        Me.Close()
    End Sub

    Private Sub ComboBox1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged

        If ComboBox1.SelectedItem = "Seleccione un idioma" Then
            RadioButtonEsp.Enabled = False
            RadioButtonIng.Enabled = False
        End If

        If ComboBox1.SelectedItem = "Español" Then
            RadioButtonEsp.Enabled = False
            RadioButtonIng.Enabled = True
        End If

        RadioButtonIng.Checked = False

        If ComboBox1.SelectedItem = "Ingles" Then
            RadioButtonIng.Enabled = False
            RadioButtonEsp.Enabled = True
        End If

        RadioButtonEsp.Checked = False

    End Sub




    Private Sub ButtonAñadir_Click(sender As System.Object, e As System.EventArgs) Handles ButtonAñadir.Click
        nuevodialogo.ShowDialog()
    End Sub

    Private Sub ButtonVerGuardadas_Click(sender As System.Object, e As System.EventArgs) Handles ButtonVerGuardadas.Click
        nuevoform.ShowDialog()


    End Sub

    Private Sub ButtonModificacion_Click(sender As System.Object, e As System.EventArgs) Handles ButtonModificacion.Click
        nuevoformu.ShowDialog()
    End Sub


    Public Function corregir(cadena As String) As String

        cad = TextBox1.Text

        cad = Regex.Replace(cadena, "(.)\1{1,}", "$1")
       

        Return cad

    End Function





hay teneis el codigo de lo q tengo echo hasta ahora a ver si podeis ayudarme gracias :)

seba123neo

La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

birdez

si lo q pasa q no la entiendo mb xq tal y como lo pusiste tu deberia hacer otro array con todas las palabras en español y antes de buscarlas compararla no?

lo q pasa q en un paso de mas adelante tengo q añadir palabras y claro si lo ago como creo q tu me lo as peusto deberia añadirlas a los 4 arrays y seria un poco liante no?