none
MAYUSCULAS, minusculas y Primera_letra RRS feed

  • Pregunta

  •    Hola: Con el TextBox no hay problemas, pero Como cambiar una Cadena a MAYUSCULAS, minusculas o solo Primera_letra en Mayusculas

       

    PrivateSub TextBox1_TextChanged(…      'Pone todo en MAYusculas

       TextBox1.CharacterCasing = CharacterCasing.Upper

    Sub

       Supongamos la Cadena

    Dim MiCadenaAsString = "HoLa"   como haría para hacer:    MiCadena = "HOLA"   MiCadena = "hola"  y    MiCadena = "Hola"

    miércoles, 23 de mayo de 2012 17:12

Respuestas

  • Hola,

    MiCadena = UCase(Micadena)   ' HOLA
    MiCadena = LCase(Micadena)   ' hola
    MiCadena = UCase(mid(Micadena,1,1)) & LCase(mid(Micadena,2))   ' Hola

    Saludos,

    Javier J

    • Marcado como respuesta AmFor miércoles, 23 de mayo de 2012 17:24
    miércoles, 23 de mayo de 2012 17:21
  • Hola:
    En un Form con 1 Button y 3 Label, copia y pega el siguiente codigo.

    Public Class Form1

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Me.Label1.Text = Mayusculas(Me.TextBox1.Text)
            Me.Label2.Text = Minusculas(Me.TextBox1.Text)
            Me.Label3.Text = Frase(Me.TextBox1.Text)
        End Sub

        Private Function Mayusculas(ByVal MiCadena As String) As String
            Return MiCadena.ToUpper
        End Function

        Private Function Minusculas(ByVal MiCadena As String) As String
            Return MiCadena.ToLower
        End Function

        Private Function Frase(ByVal MiCadena As String) As String
            Return StrConv(MiCadena, vbProperCase)
        End Function
    End Class

    Un saludo desde Bilbo
    Carlos

    • Marcado como respuesta AmFor jueves, 24 de mayo de 2012 9:17
    jueves, 24 de mayo de 2012 8:40

Todas las respuestas

  • Hola,

    MiCadena = UCase(Micadena)   ' HOLA
    MiCadena = LCase(Micadena)   ' hola
    MiCadena = UCase(mid(Micadena,1,1)) & LCase(mid(Micadena,2))   ' Hola

    Saludos,

    Javier J

    • Marcado como respuesta AmFor miércoles, 23 de mayo de 2012 17:24
    miércoles, 23 de mayo de 2012 17:21
  • hola

    podrias usar

    TextBox1.Text = MiCadena.ToUpper()

    TextBox1.Text = MiCadena.ToLower()


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    miércoles, 23 de mayo de 2012 17:22
  •    Muchas gracias por 3 cosas: 1) La celeridad de la respuesta. Has tardado menos en contestar que yo en preguntar. Gracias

     2) La sencillez, claridad y eficacia de la respuesta. La he comprobado y es perfecta. Gracias

     3) Por tu tiempo. Se que son cosas muy elementales, pero llevo casi dos horas buscando sin éxito. Gracias

    Gracias Javier.

    Gracias a ti tambien, Leandro. Tomo nota, seguro que lo usare tambien. Gracias

    • Editado AmFor miércoles, 23 de mayo de 2012 17:32
    miércoles, 23 de mayo de 2012 17:29
  • Hola:
    En un Form con 1 Button y 3 Label, copia y pega el siguiente codigo.

    Public Class Form1

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Me.Label1.Text = Mayusculas(Me.TextBox1.Text)
            Me.Label2.Text = Minusculas(Me.TextBox1.Text)
            Me.Label3.Text = Frase(Me.TextBox1.Text)
        End Sub

        Private Function Mayusculas(ByVal MiCadena As String) As String
            Return MiCadena.ToUpper
        End Function

        Private Function Minusculas(ByVal MiCadena As String) As String
            Return MiCadena.ToLower
        End Function

        Private Function Frase(ByVal MiCadena As String) As String
            Return StrConv(MiCadena, vbProperCase)
        End Function
    End Class

    Un saludo desde Bilbo
    Carlos

    • Marcado como respuesta AmFor jueves, 24 de mayo de 2012 9:17
    jueves, 24 de mayo de 2012 8:40
  •    La idea me parece estupenda. Tomo nota. Gracias por el aporte

       Ah, faltaba el TextBox, pero se entendia la idea. si tuviera un texto = "HoLa CaRaCoLa" y quisiera poner "Hola Caracola", bastaria con hacer una llamada a la funcion

       Frase(texto)   , en donde Frase es el nombre de la funcion y texto seria la cadena, claro

      Lo único malo de este caso es que si texto="podría ser este texto" Frase(texto) resultaría "Podría Ser Este Texto", de poco uso

      Siguiendo el ejemplo de Javier Jimenez, podriamos cambiar la funcion a

        Private Function PrimeraLetraMAY (ByVal MiCadena As String) As String

            Return  UCase(mid(Micadena,1,1)) & LCase(mid(Micadena,2))
        End Function


    • Editado AmFor jueves, 24 de mayo de 2012 9:34
    jueves, 24 de mayo de 2012 9:14
  • Hola:
    En un Form con 1 Button y 3 Label y 2 TextBox, copia y pega el siguiente codigo.

    Public Class Form1

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim lsPalabras() As String = Me.TextBox1.Text.Split(" ")
            Me.Label1.Text = Mayusculas(Me.TextBox1.Text)
            Me.Label2.Text = Minusculas(Me.TextBox1.Text)
            Me.Label3.Text = Frase(Me.TextBox1.Text, CInt(Me.TextBox2.Text))
        End Sub

        Private Function Mayusculas(ByVal MiCadena As String) As String
            Return MiCadena.ToUpper
        End Function

        Private Function Minusculas(ByVal MiCadena As String) As String
            Return MiCadena.ToLower
        End Function

        Private Function Frase(ByVal MiCadena As String, ByVal niPalabra As Int16) As String
            Dim lsPalabras() As String = MiCadena.Split(" ")
            Dim lsRetorno As String = String.Empty
            For liciclo As Integer = 0 To lsPalabras.Count - 1
                If liciclo = niPalabra - 1 Then
                    lsRetorno &= " " & StrConv(lsPalabras(liciclo), vbProperCase)
                Else
                    lsRetorno &= " " & lsPalabras(liciclo)
                End If
            Next
            Return lsRetorno
        End Function
    End Class

    Un saludo desde Bilbo
    Carlos

    jueves, 24 de mayo de 2012 10:58
  • Me da error en

     Me.Label3.Text = Frase(Me.TextBox1.Text, CInt(Me.TextBox2.Text))

    La conversión de la cadena "amapola" en el tipo 'Integer' no es válida.

    jueves, 24 de mayo de 2012 11:11
  • El TextBox2 es para que pongas un numero y la palabra que ocupa es numero se pone la primera letra en MAYUSCULAS.

    Un saludo desde Bilbo

    Carlos

    viernes, 25 de mayo de 2012 8:58
  • Ah. ok. J. Carlos. Aunque no buscaba eso, gracias por el aporte

    Saludos

    viernes, 25 de mayo de 2012 12:08