Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: R3Z en 3 Noviembre 2015, 21:15 pm



Título: Función Split VB.NET
Publicado por: R3Z en 3 Noviembre 2015, 21:15 pm
Hola  como estan mi gente


tengo una pregunta   sobre esta funcion quiero sacer la primera palabra de texto

ejemplo : hola como estas  la primera palabra de ese texto seria "hola"

este es mi codigo

 
Código
  1. texbox1.Text = H.Split(" ").First

solo tengo una duda como hago  que si le doy doble espacio me sale la primera palabra

Código
  1. un ejemplo espacio hola como estas que me salga "hola"


Título: Re: Función Split VB.NET
Publicado por: El Benjo en 3 Noviembre 2015, 21:30 pm
Hola. No sé si soy yo o si no se entiende tu pregunta. ¿Podrías formularla de forma distinta? No se entiende donde tienes el doble espacio. Si lo que buscas es eliminar los espacios en blanco al inicio entones usa LTrim() para eliminar espacios en blanco al inicio de la cadena.


Título: Re: Función Split VB.NET
Publicado por: R3Z en 3 Noviembre 2015, 21:32 pm
tengo un textbox  con un boton


en ese boton tengo el lo siguiente

Código
  1. lblprimerpalabra=textbox.text.split(" ").first


solo me encuentra la primera palabra si le doy  espacio

yo quiero que cuando le doy a la tecla espacio primero y pongo la frase "hola como estas" que me salga en lblprimerpalabra = hola

como me explico que si no es una palabra que no me la presenta en el textbox de lblprimerpalabra



Código
  1. "Hola     Juan" (Hay 5 espacios)
  2. "Hola","","","","","","Juan" Entonces hay habrian 2 palabras y descontaría cada "" que encuentre.


Título: Re: Función Split VB.NET
Publicado por: Eleкtro en 4 Noviembre 2015, 01:34 am
Cuesta bastante entender lo que pretendes hacer en realidad...

Si lo que quieres es eliminar espacios al principio o al final del String, entonces utiliza la función String.TrimStart o String.TrimEnd respectivamente.

Si tu intención es crear un array a partir de un string, y evitar que hayan elementos en blanco/vacíos, entonces utiliza el overload de la función String.Split que sirve precisamente para ese propósito:
Código
  1. Dim words As String() = "Hola     Juan".Split({" "c}, StringSplitOptions.RemoveEmptyEntries)

El array solamente contendrá "palabras", cero elementos vacíos (espacios en blanco), por lo que puedes hacer este tipo de evaluación de forma segura:
Código
  1. If (words.Any) Then
  2.    lblprimerpalabra.txt = words.First
  3.  
  4. Else
  5.    ' El array no contiene elementos.
  6.  
  7. End If

Saludos


Título: Re: Función Split VB.NET
Publicado por: R3Z en 4 Noviembre 2015, 03:26 am
Código
  1. Dim f As Integer
  2.  
  3.        For Each Palabra As String In txtOración.Text.Split(" ")
  4.            If Not Palabra = "" Then
  5.                f= f + 1
  6.            End If
  7.        Next
  8.        lblCantPalabras.Text = Z

como hago esta funcion para encontrar la primera palabra


textbox1.text.split(" ").first  esta  funcion me encuentra la palabra despues del espacio yo lo que quiero es cuando yo le multiple espacio que me sace la primera palabra que puse  ej:"" "" "" "" "" hola como estas  lblprimer=hola




Título: Re: Función Split VB.NET
Publicado por: Eleкtro en 4 Noviembre 2015, 04:16 am
como hago esta funcion para encontrar la primera palabra

textbox1.text.split(" ").first  esta  funcion me encuentra la palabra despues del espacio

VUELVO A REPETIR:

Si tu intención es crear un array a partir de un string, y evitar que hayan elementos en blanco/vacíos, entonces utiliza el overload de la función String.Split que sirve precisamente para ese propósito:
Código
  1. Dim words As String() = "Hola     Juan".Split({" "c}, StringSplitOptions.RemoveEmptyEntries)

...
Código
  1. lblprimerpalabra.txt = words.First
...

Despues, para contar la cantidad de elementos del array puedes utilizar la propiedad Count, o seguir utilizando el For Each de tu ejemplo, pero sin la necesidad de evaluar elmentos vacíos.

Saludos.


Título: Re: Función Split VB.NET
Publicado por: crack81 en 4 Noviembre 2015, 04:25 am
Mira este ejemplo use un form y un boton, encuentra la primera palabra haya no espacio anteriormente

Código
  1. Public Class Form1
  2.    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  3.        Dim palabras As String
  4.  
  5.        palabras = "    HOla mundo *****"
  6.  
  7.        For Each palabra As String In palabras.Split(" ")
  8.  
  9.            If Not String.Compare(palabra, " ") Then
  10.                MessageBox.Show(palabra)
  11.                Exit For
  12.            End If
  13.        Next
  14.  
  15.    End Sub
  16. End Class


Título: Re: Función Split VB.NET
Publicado por: R3Z en 4 Noviembre 2015, 05:03 am
ahora si gracias crack





Gracias a todos lo que dieron su aporte